Google chrome extension chrome.i18n.getMessage始终为空

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

我正在尝试将i18n启用到我正在开发的一个小chrome扩展

现在,我只需要翻译html文件中的一些字符串。我知道i18n功能不能直接做到这一点,因此我编写了自己的本地化功能:

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.."
    }
}