私はAngular 2で非常に新しいので、別の変数の中に含まれる必要がある変数の文字列をテンプレートに表示したいと思います。私の問題の簡単な例を示します私が達成したいことは:
questionnaire.component.ts
/* Starts being "", populating an input text will modify this */
name = "Albert";
/* This variable comes from calling an API, here I just put it as created to simplify */
question.title = "Hello {{name}}, how old are you?";
questionnaire.template.html
<p>{{question.title}}</p>
私が得ている結果は次のとおりです。
{{name}}こんにちは、あなたは何歳ですか?
そして、私の望ましい結果は次のようになります:
こんにちはアルバート、あなたは何歳ですか?
DBに保存されている文字列の「{{}}」をエスケープしようとしました。中括弧の代わりにASCII文字を使用し、中に入れます[innerHTML]...しかし、結果は常に同じでした。
これをどのように解決できるか知っていますか?
どうもありがとうございました!
{{}}
は、Angularコンポーネントテンプレートでのみ動作し、任意の文字列では動作せず、DOMに動的に追加されたHTMLでも動作しません。
に変更するだけです
question.title = `Hello ${this.name}, how old are you?`;
typeScript文字列補間を使用します。
Angular2では、thisキーワードを使用する必要があります
たとえば、$ {this.name}