0
A
回答
0
我使用這種方法現在:
- 父組件保存到子組件
- 每個子組件傳遞其作爲參數模型的模型參考/結合
- 子組件具有之間不同域模型和它自己的狀態屬性
這種技術引入了一些開銷,但它似乎工作得很好。領域模型與組件可能想要使用的其他屬性之間的區分允許對關注點進行很好的分離。
在代碼中,這看起來是這樣的:
// parent template
<div class="message-list">
<message ng-repeat="message in $ctrl.messages" model="message"
on-delete="$ctrl.removeMessage(message)">
</message>
</div>
// parent component
.component('messagelist', {
templateUrl: 'core/messagelist/messagelist.html',
controller: MessageListCtrl
});
function MessageListCtrl() {
var message1 = {
text: "message numero uno"
};
var message2 = {
text: "message numero dos"
};
this.messages = [message1, message2];
// (...)
}
// child template
<input type="text" ng-model="$ctrl.model.id" />
<textarea ng-model="$ctrl.model.text"></textarea>
// child component
.component('message', {
templateUrl: 'core/message/message.html',
controller: MessageCtrl,
bindings: {
model: "=",
onDelete: "&"
}
})
function defaultValue(current, defaultVal) {
return typeof current !== "undefined" ? current : defaultVal;
}
function MessageCtrl() {
this.$onInit = function() {
this.model.id = defaultValue(this.model.id, "");
this.model.text = defaultValue(this.model.text, "");
}
}
相關問題
- 1. 如何從數組中收集數據?
- 2. 從Crystal Report收集所有數據
- 3. 從Facebook組收集數據
- 4. 從子組件收集數據
- 5. 如何從集合空載刪除實體的所有收集的數據
- 6. 收集數據庫中的所有行
- 7. mgo.v2狂歡 - 如何從json收集集合中的所有數據?
- 8. 如何收集數據變量數組
- 9. 如何收集數組中所有真值的鍵?
- 10. 從多維數組中收集數據?
- 11. 查詢不收集所有數據
- 12. 收集所有數據屬性?
- 13. 組收集數據的MongoDB
- 14. 從AngularJS形式到控制器的初始調用?收集完所有數據後如何渲染頁面?
- 15. 如何收集數組?
- 16. 如何從對象收集數據
- 17. 如何從Google Analytics收集數據?
- 18. 如何從INMEMORY分區收集數據?
- 19. 收集所有數組項從每個對象
- 20. 如何收集已在AngularJS中選擇的行的數據?
- 21. Python:從數據集中收集數據
- 22. 如何在NodeRED數組中收集從angularJS發送的字符串?
- 23. 從數據庫收集所有記錄,並檢查存在
- 24. Scrapy:不從所有頁面收集數據
- 25. while循環不顯示從數據庫收集的所有數據
- 26. phpmailer沒有從表單收集數據
- 27. 如何從r中的JSON文件中收集數據?
- 28. 在AngularJs服務中從WebApi中收集數據的問題
- 29. 如何查找hadoop數據集中所有鍵的組合?
- 30. 收集對象[]數組中的所有方法參數