【问题标题】:Bind an array to the parent of an angular 1.5 component将数组绑定到 Angular 1.5 组件的父级
【发布时间】:2017-03-21 13:46:58
【问题描述】:

我在子组件上实现双向绑定时遇到问题。所以我的目标是当一个数组添加/删除一个新对象时,父组件上的数组也会反映这种变化。这是一些更详细的代码。

父组件控制器:

export class ParentController {
    selectedItems = [];
}

父组件html:

<list-selector selectedItems="$ctrl.selectedItems"></list-selector>

子组件:

export var listSelectorComponent: IComponentOptions = {
    bindings: {
        selectedItems: "="
    },
    controller: childController
};

子控制器:

export class listSelectorController {

    selectedItems = [];

    addToSelectedItems(){
        this.selectedItems.push({name:'First Item'});
    }
}

这是我得到的错误。我很确定这与绑定有关,但我不确定出了什么问题。任何建议将不胜感激!

Error: [$compile:nonassign] Expression 'undefined' in attribute 'selectedItems' used with directive 'listSelector' is non-assignable!

【问题讨论】:

    标签: javascript html angularjs angularjs-directive angular-components


    【解决方案1】:

    您的问题确实与您的绑定有关。 只需将您的父组件 html 更改为:

    <list-selector selected-items="$ctrl.selectedItems"></list-selector>
    

    你可以走了。 请注意,html 标记属性必须为 like-this,而绑定属性必须始终为驼峰式 likeThis。

    【讨论】:

      猜你喜欢
      • 2016-07-03
      • 2016-09-10
      • 2017-06-17
      • 2018-07-09
      • 2017-03-06
      • 2016-12-12
      • 2017-05-10
      • 2016-09-12
      • 2023-03-09
      相关资源
      最近更新 更多