Extjs 发布带有本地化的ext.js 7.2现代项目
我用ExtJS7.2Modern构建了一个小示例应用程序,它只包含一个带有按钮的面板。在按钮的单击处理程序中,将创建一个对话框,并显示两个按钮“确定”和“取消”: 如果我随后发布项目(不是构建,而是发布,制作一个发布版本以交付给客户),由于默认的“en”本地化,两个按钮的文本为“确定”和“取消” 现在我想本地化这两个按钮,例如,德语。预期结果应为“Ok”和“Abbrechen” 所以我遵循了Sencha文档和 我尝试的第一件事是在app.json中插入以下代码Extjs 发布带有本地化的ext.js 7.2现代项目,extjs,sencha-architect,sencha-cmd,Extjs,Sencha Architect,Sencha Cmd,我用ExtJS7.2Modern构建了一个小示例应用程序,它只包含一个带有按钮的面板。在按钮的单击处理程序中,将创建一个对话框,并显示两个按钮“确定”和“取消”: 如果我随后发布项目(不是构建,而是发布,制作一个发布版本以交付给客户),由于默认的“en”本地化,两个按钮的文本为“确定”和“取消” 现在我想本地化这两个按钮,例如,德语。预期结果应为“Ok”和“Abbrechen” 所以我遵循了Sencha文档和 我尝试的第一件事是在app.json中插入以下代码 "requires&qu
"requires": [
"ext-locale"
],
"locale": "de",
但那没有起作用。按钮的文字仍然是英文
然后我试过另一个建议
"requires": [
"ext-locale"
],
"locales": [
"de",
"fr"
],
再一次,它没有起作用
我第一次使用Sencha Architect进行发布,所以我想,也许它可以与Sencha cmd一起使用
但是没有。它总是保持英语。我检查了发布文件夹,在其中找不到任何locale-xx.js文件
然而,当我预览项目时,它每次都能工作。所以毕竟它是一个bug。
在支持人员的帮助下,我对ext-locale-de.js文件的最后一部分进行了注释,可以在这里找到:ext\modern\locale\overrides\de
/* Ext.define("Ext.locale.de.grid.filters.menu.Base", {
override: "Ext.grid.filters.menu.Base",
config: {
text: "Filter"
}
});
Ext.define('Ext.locale.de.grid.locked.Grid', {
override: 'Ext.grid.locked.Grid',
config: {
columnMenu: {
items: {
region: {
text: 'Region'
}
}
},
regions: {
left: {
menuLabel: 'Verschlossen (Links)'
},
center: {
menuLabel: 'Freigeschaltet'
},
right: {
menuLabel: 'Verschlossen (Recht)'
}
}
}
});
Ext.define("Ext.locale.de.grid.plugin.RowDragDrop", {
override: "Ext.grid.plugin.RowDragDrop",
dragText: "{0} Zeile(n) ausgewählt"
});
*/
我们如何重现这个bug呢?我已经编辑了这篇文章以获得更多的澄清
/* Ext.define("Ext.locale.de.grid.filters.menu.Base", {
override: "Ext.grid.filters.menu.Base",
config: {
text: "Filter"
}
});
Ext.define('Ext.locale.de.grid.locked.Grid', {
override: 'Ext.grid.locked.Grid',
config: {
columnMenu: {
items: {
region: {
text: 'Region'
}
}
},
regions: {
left: {
menuLabel: 'Verschlossen (Links)'
},
center: {
menuLabel: 'Freigeschaltet'
},
right: {
menuLabel: 'Verschlossen (Recht)'
}
}
}
});
Ext.define("Ext.locale.de.grid.plugin.RowDragDrop", {
override: "Ext.grid.plugin.RowDragDrop",
dragText: "{0} Zeile(n) ausgewählt"
});
*/