HTML:
<div id="id" ng-bind="node.name" title="{{func(node.name)}}"></div>
controller.js
$scope.func = function _func(name) {
let w = angular.element('#id').width();
console.log(w);
return w;
}
test.js
describe('test', () => {
// prepare scope ...
$scope.node.name = 'testtesttestname';
let element = angular.element('#id');
angular.element(document).find('body').append(element); // Line 5
expect($scope.func('testtesttestname') > 0).to.be.true();
})
我是angularjs的新手。
在上面的html中,有一个带有ng-bind的div
。在test.js
中,我使用新名称更新了$scope.node.name
。并且func()
应该在更新后返回div
的实际宽度。但是没有第5行,似乎width
总是为什么?任何更好的方法来替换angular.element(document).find('body').append(element);