i18n.getMessage()

获取指定消息的本地化字符串。

有关使用此函数的指南,请参阅国际化页面。

语法

js
browser.i18n.getMessage(
  messageName,  // string
  substitutions // optional any
)

参数

messageName

string。消息的名称,如 messages.json 文件中指定。如果在 messages.json 中找不到该消息

  • Firefox 返回 "" 并记录错误。
  • Chrome 返回 "" 且不记录错误。
substitutions 可选

stringstringarray。单个替换字符串或替换字符串数组。

在 Chrome 中,如果您提供超过 9 个替换字符串,getMessage() 将返回 undefined

返回值

string。针对当前区域设置本地化的消息。

示例

获取 "messageContent" 的本地化字符串,并替换 target.url

js
let message = browser.i18n.getMessage("messageContent", target.url);
console.log(message);

这将与包含以下内容的 _locales/en/messages.json 文件一起使用:

json
{
  "messageContent": {
    "message": "You clicked $URL$.",
    "description": "Tells the user which link they clicked.",
    "placeholders": {
      "url": {
        "content": "$1",
        "example": "https://mdn.org.cn"
      }
    }
  }
}

如果 target.url 是 "https://mdn.org.cn",则在 "en" 区域设置中,消息的值将是:

"You clicked https://mdn.org.cn."

扩展程序示例

浏览器兼容性

注意:此 API 基于 Chromium 的chrome.i18n API。本文档摘自 Chromium 代码中的i18n.json