Có thể đây là hai câu hỏi trong một câu hỏi. Tôi biết bạn phải khai báo rõ ràng các chỉ thị sẽ được sử dụng bên trong một Component cho Angular 2. Liệu điều này có truyền cho trẻ em Các thành phần của Component, và nếu không, nó có thể được tạo ra không? Thứ hai, làm các biến khai báo trên các thành phần tuyên truyền cho trẻ em, hoặc họ phải được thông qua một cách rõ ràng cho các thành phần?Chỉ thị/phạm vi thừa kế
Trả lời
Kể từ phiên bản beta.14, bạn phải liệt kê rõ ràng tất cả các chỉ thị đã sử dụng trong mảng 's directives
. Đối với phần thứ hai của câu hỏi, các biến được khai báo trên thành phần (ví dụ: this.name
) không được truyền cho các thành phần con. Để đạt được điều đó, bạn phải truyền chúng một cách rõ ràng trong các mẫu thành phần sử dụng các thuộc tính như <child [item]="parentItem"></child>
và thành phần con phải chứa thuộc tính @Input item
.
EDIT: Để kết hợp làm rõ từ nhận xét ... Có thể đăng ký chỉ thị trên toàn cầu nhưng chỉ trong chức năng bootstrap
. Chỉ thị được khai báo trên bố mẹ sẽ NOT được thừa hưởng bởi thành phần con.
bootstrap(App, [
PLATFORM_DIRECTIVES,
provide(PLATFORM_DIRECTIVES, {useValue: [SomeDirective, SomeComponent], multi:true})
]);
Bạn có thể làm cho direcitves toàn cầu có sẵn với 'cung cấp (PLATFORM_DIRECTIVES, {useValue: [SomeDirective, SomeComponent], multi: true}) ', cùng với các ống' bootstrap (Ứng dụng, [cung cấp (PLATFORM_PIPES, {useValue: RainbowizePipe, đa: true})]); ' –
Cảm ơn bạn đã làm rõ – tomastrajan
- 1. Hành vi thừa kế ExtJs
- 2. Thừa kế cho phạm vi trong AngularJS
- 3. Chỉ thị AngularJS - Phạm vi biệt lập và Phạm vi kế thừa
- 4. Thừa kế thừa kế động
- 5. C#: Thừa kế thừa kế
- 6. Thừa kế thừa kế và thừa kế phương thức
- 7. iPhone - UIImagePickerControllerKho thừa kế kế thừa
- 8. Java thừa kế vs C# thừa kế
- 9. Kế thừa nhiệm vụ Gradle thừa kế
- 10. Hành vi của Mutlple thừa kế trong python
- 11. Thừa kế bảng đơn hoặc thừa kế bảng lớp?
- 12. Thừa kế vi phân trong JavaScript là gì?
- 13. Maven pluginQuản lý cấu hình thừa kế hành vi lạ
- 14. Thừa kế ảo thuần túy, đa thừa kế và C4505
- 15. Thừa kế của metaclass
- 16. thừa kế lớp vỏ Scala
- 17. Thừa kế và generics
- 18. Akka dispatcher thừa kế
- 19. Giá trị ghi đè kế thừa thừa kế Java
- 20. Thừa kế kế thừa: lớp trừu tượng - CREATOR nào?
- 21. Thừa kế tài liệu trong kế thừa lớp Python
- 22. kế thừa của msxsl.exe?
- 23. Python Nhiều thừa kế
- 24. Kế thừa javascript đúng
- 25. Nhiều thừa kế?
- 26. thừa kế JavaScript diệu
- 27. Thừa kế riêng sử dụng chỉ thị, quá tải?
- 28. Cách chỉ định ID gia tăng kế thừa bằng Java
- 29. Chỉ tìm giao diện không được kế thừa?
- 30. Chỉ thị thừa kế trong khối vị trí lồng nhau
Họ có kế hoạch triển khai những gì bạn đề cập. [Xem vấn đề này] (https://github.com/angular/angular/issues/2844). Tuy nhiên, nó liên tục bị đẩy lùi, vì vậy bạn sẽ phải đợi. –
Tôi đoán đây là một hạt cứng để crack bởi vì ý tưởng mô đun chỉ ra rằng một thành phần/mô-đun không có phụ thuộc được ẩn. Nếu bạn đã di chuyển thành phần con của bạn ở một nơi khác, nó sẽ phá vỡ. Điều này thường được giải quyết với việc thừa kế hoặc tiêm phụ thuộc, tạo ra một liên kết mạnh mẽ giữa phần tử con và thành phần cha và lần lượt làm cho thành phần con của bạn có thể dễ dàng di chuyển xung quanh. – jornare
Tôi cho rằng có ý nghĩa trong cùng một cách như lập trình chức năng sau đó ... không may nó có nghĩa là tôi có một số công việc để làm;) – djvs