2017-02-25 115 views
1

我想內插模板字符串(在別處定義):如何使用動態值插值帶標籤的模板字符串?

const url = `www.example.com/${query}/current.json`; 

與動態值(例如, 「ES6」)轉換成這樣的:

"www.example.com/es6/current.json" 

例如,如果我有像這樣:

function makeRequest(url, query){ 
    // how do I generate my final url, here from the url and query? 
} 

// somehwere else: 
makeRequest(url, query) 

被標記的模板字符串和標記函數的方式去?我見過很多不同的例子,但沒有一個適合這種特殊情況。

+1

你只要之前{把$}'\'www.example.com/$ {查詢} /current.json \',' –

+0

所以,'VAR的查詢=' es6''? – Bergi

+0

「其他地方定義」是什麼意思?你可能會混淆[*模板文字*與模板](http://stackoverflow.com/a/29771751/1048572) – Bergi

回答

3

這正是功能發明的原因!

const dynamicUrl = query => `www.example.com/${query}/current.json` 
 

 
console.log(dynamicUrl('es6')) //=> 'www.example.com/es6/current.json'

+0

哈哈謝謝我知道答案是正確的在我的臉上 – zok

+1

@zok不要忘了'encodeURIComponent(query)'或確保'query'是URL安全的。 – loganfsmyth

相關問題