我正在尝试使用Drupals翻译。的 '/管理/配置/区域/翻译'即可。 当我使用底部的代码时,单词显示在列表中,我可以指定翻译。
但是当我在jQuery代码中使用变量时,我收到了错误。
无法读取未定义的属性't'
也许我需要定义t?或包括它? 我正在使用Drupal 8
Doc:https://www.drupal.org/docs/7/api/localization-api/translating-strings-in-javascript
;(function ($, Drupal) {
$(function () {
function addLeadForm(){
var title = Drupal.t("Fill to get demoversion");
var firstName = Drupal.t("firstname");
var lastName = Drupal.t("lastname");
var email = Drupal.t("email");
});
})(jQuery);
由于
答案 0 :(得分:3)
我猜您忘了在*.libraries.yml
中添加正确的依赖项。
来自menu_ui.js
的示例:
(function ($, Drupal) {
Drupal.behaviors.menuUiDetailsSummaries = {
attach: function attach(context) {
$(context).find('.menu-link-form').drupalSetSummary(function (context) {
var $context = $(context);
if ($context.find('.js-form-item-menu-enabled input').is(':checked')) {
return Drupal.checkPlain($context.find('.js-form-item-menu-title input').val());
}
return Drupal.t('Not in menu');
});
}
};
以及相应的menu_ui.libraries.yml
:
drupal.menu_ui:
version: VERSION
js:
menu_ui.js: {}
dependencies:
- core/jquery
- core/drupal
- core/drupal.form