有没有办法使用ES6语法调用以下函数:
let type = 'Line'
new Chartkick.${ type }Chart(el, this.data)
希望产生:
new Chartkick.LineChart(el, this.data)
答案 0 :(得分:3)
不,你不需要任何字符串插值。它只是standard dynamic property access带括号表示法:
new Chartkick[type+"Chart"](el, this.data);
当然你可以使用ES6模板文字而不是字符串连接,但我认为它不会提高可读性:
new Chartkick[`${ type }Chart`](el, this.data);