2017-01-16 104 views
2

有沒有簡單的方法來做一次性模板字符串編譯/單向數據綁定?我不需要動態組件,只需要處理模板字符串,例如My name is {{person.name}}並綁定提供的上下文,例如{name: 'John'}動態字符串編譯

+1

http://stackoverflow.com/questions/34784778/equivalent-of-compile-in-angular-2/37044960#37044960 –

+0

@GünterZöchbauer這正是我不想做的 - 創建新模塊,創建動態組件等這對於我想要實現的簡單任務來說是一種矯枉過正的行爲。 – sdev

+0

我不認爲這會改變很多,如果你想要或不;;) –

回答

0

如果使用或同級(或特定browsers),可以使用Template literals,像這樣:

var person = { name: 'john' }; 
 
var result = `My name is ${person.name}`; 
 

 
console.log(result);

如果沒有,你可以使用這樣的正則表達式:

var person = { name: 'john' }; 
 
var result = 'My name is {{person.name}}'.replace(/{{?.*}}/, function(a) { 
 
    return eval(a); 
 
}); 
 

 
console.log(result);

當然,這是虛擬演示,但這是主體。