Google chrome extension chrome.i18n.getMessage始终为空
我正在尝试将i18n启用到我正在开发的一个小chrome扩展 现在,我只需要翻译html文件中的一些字符串。我知道i18n功能不能直接做到这一点,因此我编写了自己的本地化功能:Google chrome extension chrome.i18n.getMessage始终为空,google-chrome-extension,Google Chrome Extension,我正在尝试将i18n启用到我正在开发的一个小chrome扩展 现在,我只需要翻译html文件中的一些字符串。我知道i18n功能不能直接做到这一点,因此我编写了自己的本地化功能: var $objects = $('*[data-message]'); $objects.each(function() { var $this = $(this); var messageName = $this.attr('data-message'); var text = $this.h
var $objects = $('*[data-message]');
$objects.each(function() {
var $this = $(this);
var messageName = $this.attr('data-message');
var text = $this.html();
var translated = chrome.i18n.getMessage(messageName);
if (translated !== '' && translated !== undefined) {
$this.html(translated);
}
console.log(messageName); // this prints "theTitle"
console.log(translated); // this prints ""
});
这是我html文件中的字符串:
<span data-message="theTitle">Live Quotes Portfolio</span>
问题在于,在两个控制台日志中,第一个日志打印需要翻译的正确字符串,但第二个日志始终为空
我错过了什么?我还有
“default\u locale”:“it”
在我的manifest.json
…上重新加载扩展了吗chrome://extensions 页编辑messages.json文件时需要此选项。顺便说一句,你可以通过CSS进行翻译,例如,#title:before{content:“\uu MSG\u theTitle\uuu”}
确实没有,但你是对的。。。重新加载扩展解决了我的问题。我花了好几个小时试图解决这个问题,哈哈:)谢谢!!
{
"theTitle": {
"message": "Il titolo",
"description": "The string we search for.."
}
}