[OK]をクリックします。私がAngular2/Typescriptで直面している問題についてもう一度助けてください。Promiseを使用しているときに角2がループしている
/// <reference path="../node_modules/angular2/typings/browser.d.ts" />
import {Component} from 'angular2/core';
import {bootstrap} from 'angular2/platform/browser';
@Component({
selector: 'hello-app',
template: `
<h1>Foo:{{getFoo("FooBar") | async}}</h1>
`
})
export class HelloApp {
getFoo(parameter): Promise<string> {
return new Promise((resolve) => resolve(parameter));
}
}
bootstrap(HelloApp);
あなたがこれを実行しようとすると、それは私がそれを殺すまで、私のブラウザタブを凍結、ループに入ります。ここでは
は私の単純化したコードです。
次のコードは正常に動作しますが、私は、パラメータを渡す必要があるので、私がやりたいことはありません...
/// <reference path="../node_modules/angular2/typings/browser.d.ts" />
import {Component} from 'angular2/core';
import {bootstrap} from 'angular2/platform/browser';
@Component({
selector: 'hello-app',
template: `
<h1>Foo:{{foo | async}}</h1>
`
})
export class HelloApp {
foo: Promise<string> = new Promise((resolve) => resolve("foobar"));
}
bootstrap(HelloApp);
任意の手掛かり?前もって感謝します !
anerrに感謝しますが、メソッドにパラメータを追加する必要があるため、フィールドでこれを実現する方法がわかりません – phil
あなたの質問のコードからは分かりません。もっと文脈が必要です。あなたの質問の例から、 'this.foo = getFoo(" FooBar ");をコンストラクタで呼び出すと仮定しますが、それ以上のことはあると思います。 –
私のテンプレートはリストをループしています。しかし、私はコンストラクターで同じリストをループすることで自分の価値を創造しました。少なくともそれは動作します、ありがとう! – phil