sách gpt4 ăn đã đi

Sử dụng [ngValue] và [selected] trong thẻ chọn (sử dụng [ngValue] và [selected] trong thẻ chọn)

In lại Tác giả: trợ lý lỗi Thời gian cập nhật: 25-10-2023 23:10:53 36 4
mua khóa gpt4 giày nike



Tôi đang cố gắng đặt giá trị mặc định của thẻ select chứa các đối tượng trong biểu mẫu, sử dụng [selected] và [ngValue]. Nhưng vì lý do nào đó, chúng có vẻ không tương thích.

Tôi đang cố gắng sử dụng [đã chọn] và [ngValue] để đặt giá trị mặc định cho thẻ chọn chứa đối tượng trong biểu mẫu. Nhưng vì lý do nào đó, họ dường như không so sánh được.



Mã ví dụ:

Mã mẫu:




lớp="điều khiển biểu mẫu"
formControlName="cửa hàng nhà"
tabindex="{{getTabIndex('cửa hàng nhà')}}">


[ngValue]="lưu trữ"
[đã chọn]="store.storeId == PersonalInfo.homeStore?.storeId">
{{tên cửa hàng}}





Mã này cuối cùng chỉ hiển thị giá trị mặc định là blank. Nếu tôi xóa [ngValue] thì nó hoạt động tốt, ngoại trừ việc giá trị store.name được chọn, thay vì đối tượng store.

Mã này cuối cùng chỉ hiển thị trống làm giá trị mặc định. Nếu tôi xóa [ngValue] thì nó hoạt động tốt, nó chỉ chọn giá trị store.name thay vì đối tượng store.



Có gợi ý nào không?

Có gợi ý gì không?


Thêm câu trả lời
Khuyến nghị câu trả lời tuyệt vời

Bạn có thể sử dụng so sánhVới với [ngValue]

Bạn có thể sử dụng CompareWith với [ngValue]



ví dụ:

Ví dụ:




lớp="điều khiển biểu mẫu"
formControlName="cửa hàng nhà"
tabindex="{{getTabIndex('homeStore')}}" [so sánh với]="so sánh theo ID">

[ngValue]="lưu trữ">
{{tên cửa hàng}}



so sánhByID(itemOne, itemTwo) {
trả về itemOne && itemTwo && itemOne.ID == itemTwo.ID;
}


Nhìn thấy: https://github.com/angular/angular/pull/13349

Xem: https://github.com/angular/angular/pull/13349



Ví dụ So sánh các tùy chọn được chọn: http://blog.ninja-squad.com/2017/03/24/what-is-new-angular-4/

Ví dụ so sánh các tùy chọn lựa chọn: http://blog.ninja-squad.com/2017/03/24/what-is-new-angular-4/



Lưu ý: hỗ trợ này được thêm vào Angular4

Lưu ý: Hỗ trợ này đã được thêm vào Angular4



[ngGiá trị]="..." được cho là được sử dụng với [(ngModel)]. [đã chọn] không hoạt động với [ngValue].

[ngValue]="..." nên được sử dụng với [(NgModel)]. [Đã chọn] không áp dụng cho [ngValue].



Cập nhật thẻ chọn của bạn như bên dưới, ngModel sẽ giữ giá trị đã chọn

Cập nhật thẻ chọn của bạn như hiển thị bên dưới và ngModel sẽ lưu giá trị đã chọn







Tôi đăng câu trả lời của mình vì có thể ai đó cũng đang gặp phải tình trạng tương tự.

Tôi đăng snitch của mình vì có thể có ai đó cũng hành xử như vậy.



Tôi đang nhận một giá trị từ API và tôi cần gán cho điều khiển biểu mẫu thì bạn không thể gán trực tiếp. Bạn cần sử dụng cùng một có sẵnCửa hàng mảng thể hiện và tìm giá trị bên trong.
Đó là cách để có được [ngValue] hoạt động hoàn hảo.

Tôi đang nhận được một giá trị từ API và tôi cần gán cho điều khiển biểu mẫu, sau đó bạn không thể gán giá trị đó trực tiếp. Bạn cần sử dụng cùng một mảng các phiên bản có sẵnStores và tìm giá trị trong đó. Đây là cách để [ngValue] hoạt động hoàn hảo.



control.setValue(this.availableStores.find(
lưu trữ => store.name === this.valueFromAPI.name
));


lớp="điều khiển biểu mẫu"
formControlName="cửa hàng nhà"
>

*ngFor="hãy lưu trữ các cửa hàng có sẵn"
[ngValue]="lưu trữ">
{{tên cửa hàng}}




Thẩm quyền giải quyết https://angular.io/api/forms/SelectControlValueAccessor kiểm tra ví dụ đầu tiên.

Tham khảo https://angular.io/api/forms/SelectControlValueAccessor để kiểm tra ví dụ đầu tiên.



Thêm một

Thêm vào



[ngModel]="Đối tượng mặc định của bạn"


để bạn lựa chọn và tương tự cho tùy chọn đầu tiên

Đặt thành tùy chọn bạn chọn và giống như tùy chọn đầu tiên



Trong Angular, sử dụng Reactive Forms, với lệnh select có thiết lập [ngValue] trong tùy chọn, nếu bạn muốn thiết lập tùy chọn hiện đang được chọn theo chương trình bằng Typescript từ Thành phần liên quan, bạn có thể thực hiện theo cách này:

Trong Angular, sử dụng dạng phản ứng, với lựa chọn [ngValue] được đặt trong các tùy chọn, nếu bạn muốn đặt tùy chọn hiện được chọn theo chương trình bằng cách sử dụng tập lệnh loại trong thành phần được liên kết, bạn có thể thực hiện như sau:


this.myReactiveForm.controls["mySelectControlName"].setValue( giá trị mong muốn);

Thêm câu trả lời

Vậy, có gợi ý nào để giải quyết vấn đề này theo hình thức phản ứng không?

Vì vậy, có gợi ý nào để giải quyết vấn đề này ở dạng thụ động không?

Ở dạng phản ứng, bạn gán giá trị cho thể hiện điều khiển. [đã chọn] không liên quan đến các dạng phản ứng.

Ở dạng phản ứng, bạn gán giá trị cho các phiên bản điều khiển. [Đã chọn] không liên quan gì đến các hình thức phản ứng.

Làm thế nào để thiết lập giá trị được chọn trong các biểu mẫu phản ứng? API xin vui lòng? tx Sean

Làm cách nào để đặt giá trị đã chọn ở dạng phản ứng? Bạn có thể vui lòng cho tôi API không? TX Sean

this.myForm.get('mycontrol').setValueAndValidity(newValue)`

This.myForm.get('mycontrol').setValueAndValidity(newValue)`

Tôi tìm thấy angular.io/api/forms/SelectControlValueAccessor

Tôi đã tìm thấy Angular.io/api/forms/SelectControlValueAccessor

Điều này không hiệu quả với các hình thức phản ứng

Điều này không hoạt động đối với các hình thức phản ứng

Điều này không hiệu quả với các hình thức phản ứng

Điều này không hoạt động đối với các hình thức phản ứng

36 4 0
trợ lý lỗi
Hồ sơ

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá taxi Didi miễn phí
Phiếu giảm giá taxi Didi
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress