我有我的變量$scope.test
是不斷變化的問題。
首先我有的node.js服務器,它返回一個JSON對象像下面的一個上的功能:
{
objectOne: "some text",
objectTwo: "more text",
objectThree: {
text: "important text",
inf: "some info"
},
objectFour: "even more text"
}
然後在角我有一個控制器。 (此控制器用於2個html模板,不確定是否重要)。因此,要在控制器中的功能:
$scope.start = function() {
$location.path('/start');
SomeService.start({}, someVar, function (success, msg, t) {
if (!success) {
console.error(msg);
}
$scope.test = t;
console.log($scope.test); //this prints out the json object above
});
};
然後,我有一個模板文件的test.html:
<div>
<md-card>
<md-card-title>
<md-card-title-text>
<span class="md-headline">{{test.objectThree.text}}</span>
</md-card-title-text>
</md-card-title>
<md-card-actions layout="row" layout-align="end center">
<md-button>Cancel</md-button>
</md-card-actions>
</md-card>
</div>
的問題是,它並沒有顯示文本。所以我在控制器中做了另一個功能,每100ms記錄一次$scope.test
。
$interval(function() {
console.log($scope.test);
}, 100);
現在奇怪的是,它打印出類似於下面的示例:
Object {
objectOne: "some text",
objectTwo: "more text",
objectThree: {
text: "important text",
inf: "some info"
},
objectFour: "even more text"
}
-
undefined
-
undefined
這樣下去。一旦它打印出對象,然後2次未定義。 但是當我定義vairable $scope.test2 = "test2text"
外的函數,然後有我的HTML這樣的:
<div>
<md-card>
<md-card-title>
<md-card-title-text>
<span class="md-headline">{{test2}}</span>
</md-card-title-text>
</md-card-title>
<md-card-actions layout="row" layout-align="end center">
<md-button>Cancel</md-button>
</md-card-actions>
</md-card>
</div>
它的工作原理,並顯示在網站上的文字,但我沒有任何想法,爲什麼。
因此,沒有人有一個想法,爲什麼是這樣呢? 如果您需要更多信息,請詢問。 謝謝你抽出時間;)
'console.log(var);'把它放在$ interval並檢查結果是否一樣。如果再使用,如果條件檢查值是未定義或不 –