我对StackOverflow进行了大量搜索,但找不到解决问题的方法。
我有3个文件:app.js
,routes.js
,home.pug
app.js
const express = require("express");
const http = require("http");
const i18n = require("i18n");
const routes= require("./routes.js");
const app = express();
//PUG
app.set("view engine", "pug");
app.set("views", "./");
//i18n
i18n.configure({
locales:["it", "en"],
directory: __dir + "./locals"
});
app.use(i18n.init);
app.use(function(req, res, next) {
// express helper for natively supported engines
res.locals.__ = res.__ = function() {
return i18n.__.apply(req, arguments);
};
next();
});
//Route
app.use("/", routes);
//Server
const serverHTTP = http.createServer(app);
serverHTTP.listen(8080, () => {
console.log("Server HTTP avviato");
});
routes.js
const express = require("express");
const router = express.Router();
//Root
router.get("/", function(req, res){
res.render("home");
});
//Default
router.get("*", function(req, res){
res.send("URL non valido");
});
// Export
module.exports = router;
home.pug
html
body
p __('test')
../ locals / it.json的内容
{
"test":"ciao"
}
但是当我打开浏览器时,它的字面意思是__('test')
答案 0 :(得分:0)
您需要编辑home.pug文件。在home.pug中使用以下代码
html
body
p= __('test')
您可以在i18n-x(https://www.npmjs.com/package/i18n-x)的文档中找到与i18n软件包相似的文档。
以下是屏幕截图,说明了如何在帕格文件(https://prnt.sc/m8fziy)中访问语言json。
如果遇到任何问题,请在下面评论。