が、私はこのように見える角度成分とコントローラを持っているのは時期尚早評価されngShow式は
export class MyService {
static serviceId = 'myService';
private http: ng.IHttpService;
constructor(private $http: ng.IHttpService) {
this.http = $http;
}
public getElements(): ng.IPromise<{}> {
return this.http.get('./rest/elements');
}
}
私が直面している問題は、アレイということです要素には、onInit()の呼び出し後に空の配列が含まれています。しかし、後でgetELements()の成功関数が呼び出され、要素がコンソールに書き込まれてからデータが受信されたことがわかります。私は特定の要素を表示するかどうかを判断するために私のテンプレートで使用さ
要素:
<div>
<elements ng-show="vm.elements.indexOf('A') != -1"></elements>
</div>
問題は今vm.elementsが最初に空の配列を含むことである、とだけ後で、配列が充填されています実際の値しかし、テンプレート内のこの表現はすでに評価されています。どうすれば変更できますか?
値が変更された後に変更検出を強制したい場合、変数がtemaptateの値を変更した後にObservablesを使って自動的に変更検出をトリガーすることができます –
あなたのコントローラの 'getElements()'が間違っています。実装は全く意味をなしません –
「角度1.5」はありません。 AngularJS 1.5のみがあります。怠惰な名前でもっと混乱するシナリオを作ってはいけません。 – isherwood