angular / angular/angular-cli

[Schematics CLI] Numeric strings in schematics options

未關閉
#24,360 4 則留言 0 個 reaction 已指派 0 人 在 GitHub 檢視
area: @angular-devkit/schematics-cli freq1: low type: bug/fix
主要語言
TypeScript
星號
27k
分支
11.8k
平均合併
14 小時 23 分鐘
30 天內合併 PR
162

描述

### Command

generate

### Is this a regression?

- [ ] Yes, this behavior used to work in the previous version

### The previous version in which this bug was not present was

_No response_

### Description

From http://b/196605664.

Apparently you can't pass in a numeric value into a string argument in schematics. This appears to be interpreted as number and leads to a validation error.

### Minimal Reproduction

```
$ schematics run test --stringValue "1234"
Schematic input does not validate against the Schema: {"stringValue":1234}
Errors:

Data path ".stringValue" should be string.
```

Minimist seems to interpret "1234" as a number instead of a string, and schematics treats that as a type mismatch.

### Exception or Error

_No response_

### Your Environment

```text
See http://b/196605664.
```

### Anything else relevant?

_No response_

貢獻指南

開啟貢獻指南

研究方向

從 generate 命令的選項解析以及報告中描述的 minimist 處理開始,然後使用 --stringValue "1234" 重新執行該命令。追蹤加上引號的值在哪裡變成數字,並驗證傳遞給 string 選項的數字樣式值到達 schema 驗證時仍是字串。

由索引模型根據 Issue 內容生成。

評估

技術堆疊
typescript
領域
cli
Issue 類型
缺陷
難度
3/5
預估耗時
1-2 天
活躍度
停滯
描述清晰度
基本清楚
新手友好度
45/100

把新 issue 寄到你的電子郵件信箱

精選適合新手參與的 GitHub issue 摘要。