【问题标题】:Knockout localisation dropdown selection淘汰赛本地化下拉选择
【发布时间】:2015-05-06 06:25:49
【问题描述】:

我需要一些关于设置淘汰赛本地化的建议。

我使用https://github.com/tfsjohan/Knockout-Localization-Binding 进行本地化,但由于它使用的是静态语言环境,因此我正在尝试使用带有绑定的下拉菜单。

<select data-bind="options: choices, value: selectedChoice"></select>


        <label for="name" data-bind="restext: 'name'"></label><br />

        <label data-bind="restext: 'email'"></label><br />

        <label data-bind="restext: 'street'"></label><br />

        <label data-bind="restext: 'zip'"></label><br />

        <label data-bind="restext: 'city'"></label><br />

这里是 jsFiddle http://jsfiddle.net/efkgqwa5/1/ 基本上我希望选择选项从资源中加载值(en,sv,......将来可能是其他条目),默认选择的是 en。然后当我改成sv时,它会改成其他语言。

【问题讨论】:

    标签: knockout.js localization


    【解决方案1】:

    这里的小修改就可以解决问题,只需将locale 设置为self.locale 并在使用语言环境变量的地方也反映绑定处理程序中的更改

    视图模型:

     var vm = function(){
            var self=this;
            self.choices= ["en", "sv"];
            self.selectedChoice= ko.observable();
            self.name= ko.observable();
            self.email= ko.observable();
            self.locale=ko.observable('en');
    
           self.selectedChoice.subscribe(function(newValue) {
            self.locale(newValue); //updates everywhere
           });
    

    工作小提琴here

    【讨论】:

      猜你喜欢
      • 2015-11-05
      • 1970-01-01
      • 2014-06-26
      • 2023-03-08
      • 2015-06-11
      • 1970-01-01
      • 1970-01-01
      • 2018-08-09
      • 2015-05-06
      相关资源
      最近更新 更多