如何使用一个局部变量的值替换Ha​​ndleBarjs中的其他值

如何使用一个局部变量的值替换Ha​​ndleBarjs中的其他值

问题描述:

我正在面对和处理酒吧问题。如何使用一个局部变量的值替换Ha​​ndleBarjs中的其他值

我已经创建了两个局部变量,语言的名称和两个Json文件的路径相对应。

app.locals.en=require('../locales/en.json'); 
app.locals.de=require('../locales/de.json'); 

我从URL检测德或连接和存储到另一个局部变量叫“郎”

app.locals.lang = "Some code that detects DE or EN from URL and Stores into 
lang" 

现在在Handlebrsjs我使用类似

<h1>{{lang.Home.TITLE}}</h1> 

上面的Lang应该给De或者它给的EN,但是它不会去Json文件,但是如果我们简单地使用

<h1>{{en.Home.TITLE}}</h1> 

它工作正常。 我想用lang.home.title代替en.home.title,因为lang的值也是en。 但它不适用于lang.home.title

必须有一些方法来解决问题。请告诉我。谢谢。

试试这个:

app.locals.data = {}; 

app.locals.data.en=require('../locales/en.json'); 
app.locals.data.de=require('../locales/de.json'); 

app.locals.data.lang = "Some code that detects DE or EN from URL and Stores into 

郎”

然后,你应该能够做到在你的模板如下:

<h1>{{data[lang].Home.TITLE}}</h1> 

我希望这有助于