我正在使用角度工厂做一些工作,在一种情况下,我希望工厂引用它自己的一些数据,但它似乎不起作用。在下面的示例中,data2 需要从 testVariable 读取值,但它似乎不起作用。在下面的示例中,数据只是空的。在我更复杂的场景中,我使用该值作为布尔值来显示/隐藏一个值并得到错误“无法获取未定义或空引用的属性 'xxxxxx'”。有谁知道我如何在下面根据需要成功引用 testVariable。需要注意的一件事是,它需要在工厂内部返回,因为如果值发生变化,它会设置一个 $watch 来执行一些操作。
谢谢。
(function() {
angular.module('myApp.Module').factory(
'MyFactory',
function() {
var factory = {
testVariable : 'testData2',
randomData : [
{
data1: 'testData1',
data2: testVariable,
data3: 'testData3'
}, {
data4 : 'testData4',
data5 : 'testData5',
data6 : 'testData6',
}
}
return factory;
});
}());