angular.copy()在尖括号{{}}中不起作用

杰夫

我在控制器内使用“ as vm”语法。我使用angular.copy()将一种数据结构复制到一个临时结构中。

angular.copy(vm.data, vm.tempData = [])

但是,我想将此代码移到模板视图中,因此不必依赖控制器函数调用。这是因为当我重写代码时,也不需要在控制器中重写代码。

{{vm.temp = []}}                          //works
{{vm.temp = vm.data}}                     //works
{{vm.temp = angular.copy([])}}            //does not work
{{vm.temp = angular.copy(vm.data)}}       //does not work, I need this or
{{angular.copy(vm.data, vm.temp = [])}}   //does not work, I need this

我究竟做错了什么?

凯文

此逻辑应在控制器中完成,这就是控制器的作用。但是要回答您的问题,请从有关表达式的有角度文档中进行

上下文:JavaScript表达式是根据全局窗口求值的。在AngularJS中,表达式是根据作用域对象求值的

这意味着它正在尝试在表达式中angular$scope对象寻找定义因此,要执行所需的操作,您将必须在控制器中执行以下操作:

$scope.angular = angular;

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章