Nic*_*ner 16 unit-testing angularjs
我正在尝试为指令编写测试,所以我正在手工构建它$compile.(是的,我知道我可以使用e2e测试,但在这种情况下,我想测试一些DOM独立逻辑,所以我使用单元测试方法.)
我有一个我要约束的领域scope: {foo: '='}.当我尝试在指令的范围上设置它时,我收到以下错误:
Error: Non-assignable model expression: undefined (directive: foo)
    at Error (<anonymous>)
    at $get.parentSet (https://ajax.googleapis.com/ajax/libs/angularjs/1.0.2/angular.js:4146:25)
    at Object.<anonymous> (https://ajax.googleapis.com/ajax/libs/angularjs/1.0.2/angular.js:4160:23)
    at Object.$get.Scope.$digest (https://ajax.googleapis.com/ajax/libs/angularjs/1.0.2/angular.js:7693:38)
    at Object.$get.Scope.$apply (https://ajax.googleapis.com/ajax/libs/angularjs/1.0.2/angular.js:7894:24)
    at SNAKE_CASE_REGEXP (https://ajax.googleapis.com/ajax/libs/angularjs/1.0.2/angular.js:930:13)
    at Object.invoke (https://ajax.googleapis.com/ajax/libs/angularjs/1.0.2/angular.js:2788:25)
    at bootstrap (https://ajax.googleapis.com/ajax/libs/angularjs/1.0.2/angular.js:928:12)
    at angularInit (https://ajax.googleapis.com/ajax/libs/angularjs/1.0.2/angular.js:904:5)
    at https://ajax.googleapis.com/ajax/libs/angularjs/1.0.2/angular.js:14397:5 
转载在这个小提琴中.
dnc*_*253 25
在你的指令中你有:
scope: {
   bar: '='
}
这意味着它将在指令element(<div foo></div>)上查找属性名称"bar",并在指令和为该属性指定的对象中执行双向数据绑定.因此,首先需要添加一个bar属性,然后需要在范围内设置一些属性值的名称.见http://jsfiddle.net/u4BTu/6/
| 归档时间: | 
 | 
| 查看次数: | 14498 次 | 
| 最近记录: |