如何使用i18n本地化Stimulus JS值



我正在开发rails 6应用程序,试图将所有显示的字符串存储在locale文件中。我有一个名为countdown_controller.js:的刺激控制器

import { Controller } from "@hotwired/stimulus";
export default class extends Controller {
static values = {
message: { type: String, default: "Deal closed!" }
}
}

en.yml:

en:
deals:
status:
closed: "Deal closed!"

我想在countdown_controller.js中使用I18n.t("deals.status.closed")作为messageValue的值,而不是直接写入字符串。我不知道该怎么做。

简单地将countdown_controller.js转换为countdown_controller.js.erb对我来说很有效。然后我使用插值注入I18n.t("deals.status.closed"),如下所示:

import { Controller } from "@hotwired/stimulus";
export default class extends Controller {
static values = {
message: { type: String, default: "<%= I18n.t('deals.status.closed') %>" }
}
}

附言:我最初遇到了一个错误,因为我将注释更改为使用以#开头的ruby语法,而不是以//开头的JS语法。

相关内容

  • 没有找到相关文章

最新更新