在 Polymer 应用程序中动态更改本地化
Dynamically change localization in Polymer app
我有一个包含许多模板的 Polymer 应用程序,我想在其中管理本地化。我为此使用 app-localize-behavior。我找到了。那里提出的解决方案使用行为,并且需要在每个模板中添加很少的内容,具有独特的 json 数据文件。
我的问题是我希望能够动态更改语言,并可能将其存储在我从另一个文件管理的 app-localstorage-document 元素中。我如何从该文件外部设置该语言 属性?
<link rel="import" href="../../bower_components/polymer/polymer.html">
<link rel="import" href="../../bower_components/app-localize-behavior/app-localize-behavior.html">
<script>
MyLocalizeImpl = {
properties: {
language: {
value: 'fr'
}
},
attached: function() {
this.loadResources(this.resolveUrl('../locales.json'));
},
};
MyLocalize = [MyLocalizeImpl, Polymer.AppLocalizeBehavior];
</script>
好的,我改编了app-localize-behavior demo code。更改语言的模板必须覆盖语言属性,包括“notify: true”:
properties: {
language: {
value: 'en',
type: String,
notify: true
},
},
然后我用这个绑定所有其他元素的语言属性:
<element language="{{language}}"></element>
使用本地化的模板当然必须 link 本地化脚本:
<link rel="import" href="localize.html">
... 并在脚本部分添加行为:
Polymer({
is: "my-page",
behaviors: [
MyLocalize
]
奖励:如何为每种语言使用不同的 json 文件:https://abendigo.github.io/2016/08/03/lazyloading_localization.html
我有一个包含许多模板的 Polymer 应用程序,我想在其中管理本地化。我为此使用 app-localize-behavior。我找到了
我的问题是我希望能够动态更改语言,并可能将其存储在我从另一个文件管理的 app-localstorage-document 元素中。我如何从该文件外部设置该语言 属性?
<link rel="import" href="../../bower_components/polymer/polymer.html">
<link rel="import" href="../../bower_components/app-localize-behavior/app-localize-behavior.html">
<script>
MyLocalizeImpl = {
properties: {
language: {
value: 'fr'
}
},
attached: function() {
this.loadResources(this.resolveUrl('../locales.json'));
},
};
MyLocalize = [MyLocalizeImpl, Polymer.AppLocalizeBehavior];
</script>
好的,我改编了app-localize-behavior demo code。更改语言的模板必须覆盖语言属性,包括“notify: true”:
properties: {
language: {
value: 'en',
type: String,
notify: true
},
},
然后我用这个绑定所有其他元素的语言属性:
<element language="{{language}}"></element>
使用本地化的模板当然必须 link 本地化脚本:
<link rel="import" href="localize.html">
... 并在脚本部分添加行为:
Polymer({
is: "my-page",
behaviors: [
MyLocalize
]
奖励:如何为每种语言使用不同的 json 文件:https://abendigo.github.io/2016/08/03/lazyloading_localization.html