加载并替换从文件加载的模板字符串中的变量

Load and replaces variables in template strings loaded from a file

我想在我的 Node.js 应用程序中使用 ES6 模板字符串作为翻译模板。

我有一个 JSON 文件 en_GB.json 是这样的:

{
  "app.template": "This is ${foo} I ${bar}",
  "app.foo": "bar"
}

在节点中我这样做:

const translations = require('./en_GB.json')
const foo = 'what'
const bar = 'want'

console.log(translations['app.template']) // Outputs This is ${foo} I ${bar}

我要输出的是“这就是我想要的”

不使用辅助函数是否可行?

这行得通吗?

https://www.npmjs.com/package/stringinject

https://github.com/tjcafferkey/stringinject

var string = stringInject("This is a {0} string for {1}", ["test", "stringInject"]);

// This is a test string for stringInject