Open qappleh opened 2 years ago
最简单的方法就是 string.replaceAll()了吧
const stringReplace = (template: string, obj: { [k: string]: string }) => {
const keys = Object.keys(obj)
keys.forEach(k => {
template = template.replaceAll(`{{${k}}}`, obj[k])
})
return template
}
也可以考虑用template来做
const stringReplace2 = (template: string, obj: { [k: string]: string }) => {
return eval('`' + template.replaceAll("{{", "${obj['").replaceAll("}}", "']}") + '`')
}
需要考虑的一点就是parameter会不会有一些奇怪的格式和符号, 最基本的应该没问题。 性能上好像是template literal会快一点。