angular / angular/angular-cli

[Schematics CLI] Numeric strings in schematics options

Đang mở
#24,360 4 bình luận 0 reaction 0 người được giao Xem trên GitHub
area: @angular-devkit/schematics-cli freq1: low type: bug/fix
Ngôn ngữ chính
TypeScript
Star
27k
Fork
11.8k
Merge trung bình
14 giờ 23 phút
Pull request đã merge (30 ngày)
162

Mô tả

### 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_

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Hướng nghiên cứu

Bắt đầu từ việc phân tích tùy chọn của lệnh generate và cách xử lý minimist được mô tả trong báo cáo, sau đó tái hiện lệnh với --stringValue "1234". Theo dõi nơi giá trị được đặt trong dấu ngoặc kép trở thành một số và xác minh rằng các giá trị có dạng số được truyền vào các tùy chọn string sẽ đến bước xác thực schema dưới dạng chuỗi.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Đánh giá

Công nghệ
typescript
Lĩnh vực
cli
Loại issue
Lỗi
Độ khó
3/5
Thời gian dự kiến
1-2 ngày
Mức độ hoạt động
Đình trệ
Độ rõ ràng
Khá rõ ràng
Mức phù hợp với người mới
45/100

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.