簡體   English   中英

Angular如果條件不適用於狀態

[英]Angular if condition is not working with states

我在Ionic應用程序中使用角度轉換,並且根據下拉列表中選擇的語言,需要加載不同的狀態。

主控制器:

.controller('mainCtrl', function ($scope, $state, $translate) {
  var ctrl = this;
  ctrl.language = 'kn';
  ctrl.languages = ['kn', 'en'];

  ctrl.updateLanguage = function () {
    $translate.use(ctrl.language);
  };

  $scope.lang = function () {
    if (ctrl.language = 'kn') {
      $state.go('knmenu', {}, { location: "replace", reload: true });
    } else($translate.use(ctrl.language)) {
      $state.go('menu', {}, { location: "replace", reload: true });
    }
  }

main.html中:

<div ng-controller="mainCtrl as ctrl">
  <button
    class="button button-block button-balanced"
    ng-click="lang()"
  >
    {{ 'TITLE' | translate }}
  </button>
  <select
    ng-options="language | translate for language in ctrl.languages"
    ng-model="ctrl.language"
    ng-change="ctrl.updateLanguage()"
  ></select>
</div>

如果我能理解你基於值的問題首先選擇你要填充第二個選擇框的框。 以下Plunker將解決您的問題

plunker link http://plnkr.co/edit/nND1iw7unDnelGQ3EtnA?p=preview

在你的條件檢查if (ctrl.language = 'kn')這總是如此,它應該是if (ctrl.language == 'kn')我想這是問題所在。 希望這會有所幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM