有什么方法可以动态地将存储在字符串中的 JavaScript 代码注入(inject)到 AngularJS Controller 中?
var dynamicJS = "function DoSomething(value){var x = 1+1 return 2;}"
我必须将上述函数动态注入(inject)到我的 AngularJS Controller 中,并在下拉列表的选择更改时调用它,其值绑定(bind)到 AngularJS Controller 。原因是 JavaScript 函数会根据我在应用程序级别的配置所拥有的每一行数据而有所不同。我知道我们可以使用 $eval
但希望获得一些更好的方法(如果存在的话)。
有人可以给我任何想法吗?
注意:我使用的是 AngularJS v1.4.5
最佳答案
我相信更简单的方法是解析字符串,然后使用函数构造函数。
像这样:
var DoSomething = new Function('value', 'var x = 1+1 return 2');
关于javascript - 使用 AngularJS 执行存储为字符串的 javascript 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43238003/