我在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}},你多大了?
我希望的结果是:
你好,阿尔伯特,你多大了?
我试图逃避存储在我的数据库中的字符串中的“{{}}”,使用ASCII字符而不是花括号,将其放入 [innerHTML] ...但是结果总是一样的。
你知道我怎么解决这个问题?
非常感谢!
答案 0 :(得分:17)
{{}}
仅适用于Angular组件模板,不适用于任意字符串,也不适用于动态添加到DOM中的HTML。
只需将其更改为
即可 question.title = `Hello ${this.name}, how old are you?`;
使用TypeScript字符串插值。
答案 1 :(得分:1)
在angular2中,您必须使用此关键字
例如,$ {this.name}