我正在创建一个包含HTML5和CSS的网站,而不是使用CMS。我的下一个目标是使用多种语言制作网站,以便搜索并找到许多库。我是这个的新手,去了最简单的那个或者有更多评论的例子,例子......
所以我接受了i18next,但我也试过了i18n,i18next.amd ......现在我被困了,因为我正在学习一些教程并且无法完成这项工作......每次我都会收到此错误
未捕获的ReferenceError:未定义i18n
所以我创建了一个空项目,只是为了让它工作并学习如何去做。这个新项目非常轻松。结构是:
<html>
<head>
<meta charset="utf-8">
</head>
<body>
<script type="text/javascript" src="js/jquery.min.js" ></script>
<script type="text/javascript" src="js/i18next.min.js" ></script>
<script type="text/javascript">
var options ={
lng: "en" ,
resGetPath: './../locales/__lng__/__ns__.json'
};
i18n.init(options, function(t) {
$(".nav").i18n();
});
</script>
<ul class="nav">
<li><a href="#" data-i18n="nav.home">asd</a></li>
<li><a href="#" data-i18n="nav.page1">asd</a></li>
<li><a href="#" data-i18n="nav.page2">asd</a></li>
</ul>
</body>
</html>
并且所有JSON文件都是这样的:
{
"app": {
"name": "i18next"
},
"nav": {
"home": "Home",
"page1": "Page One",
"page2": "Page Two"
}
}
我希望有人可以帮助我,我将非常感激。 (对不起我的英文顺便说一句)
我提到的教程: http://i18next.github.io/i18next/ http://jsbin.com/yaxofuhuzu/1/edit?html,js,output www.davidhamannmedia.com/en/post-i18next-an-easy-to-use-translation-javascript-library
还有更多......
答案 0 :(得分:2)
这个库的文档很乱,主要是因为作者决定将它从版本1.x重写为2.x并且API已经发生了巨大的变化。您现在可以在http://i18next.com/docs/上找到的文档是指版本2.x,而很多博客和stackoverflow文章都引用版本1.x,这增加了混淆。为了增加对伤害的侮辱,我找不到任何版本1.x的完整文档(顺便说一句,不到一年)。
现在,为了回答您的问题,您似乎使用的选项和API来自版本1.x(例如,版本2.x中不存在resGetPath
)。此外,在2.x中,i18n
已被i18next
替换。
从好的方面来看,作者似乎对问题的答复很快,所以你不妨在项目github页面上打开一个问题。或者检查一下: