无法访问指令

时间:2015-04-22 19:28:10

标签: angularjs combobox

我正在Angular中构建一个组合框插件,我正处于一种我无法弄清楚各种奇怪行为的地方。这是其中之一:

我有一个指令(称为linksEdit),其中包含组合框。在linksEdit指令的link函数中,我设置了以下数组:

scope.levels = [
    { 'id': 'link', 'value': 'Link'},
    { 'id': 'affiliate', 'value': 'Affiliate'},
    { 'id': 'partner', 'value': 'Partner'},
];

在该指令中,我有了combobox指令,传递了level值:

<combobox data="levels" value="cb_value" search="data.level" strict></combobox>

组合框确实有一个隔离范围:

scope: {
    'data': '=data',
    'search': '=search',
    'value': '=value',
}

我在组合框中有代码,它根据data.level设置组合框的默认值。 linksEdit指令被调用一次(使用新的属性集),然后使用ng-repeat重复(以显示现有数据)。我在我的combobox指令的开头添加了两个console.log:

console.log(scope);
console.log(scope.data);

对于linksEdit的第一个实例(不在重复中),scope.data具有我期望的数据。在ng-repeat中,scope显示我的data属性,但scope.data显示为undefined。我不确定他们为什么表现得如此不同。

0 个答案:

没有答案