AngularJS:当我第二次点击时,ng-switch没有触发?

时间:2016-04-14 18:52:41

标签: javascript jquery css angularjs angularjs-directive

我的应用程序视图中有一个左导航,使用ng-repeat和ng-switch构建。每个链接的动作都与右侧的指令相关联。有一段时间,当用户点击当前指令的下拉项并且页面长时间扩展时,特定指令将包含其他指令,因此如果用户想要进入原始状态,那么他可以点击左边的导航项nav将页面刷新到指令的初始状态。但是当用户第二次点击左侧导航栏时左侧导航栏已经被选中时,它就不会被触发。我希望这样可以获得RHS的初始页面。

我的高级代码如下

about.html

public partial class BaseForm : Form
    {
        public BaseForm()
        {
            InitializeComponent();
        }

        [Browsable(true)]
        [Category("Base Form")]
        [Description("Define the window title.")]
        public String WindowTitle
        {
            get { return label1.Text; }
            set { label1.Text = value; }
        }
    }

aboutController.js

<div class="leftNav">
  <ul class="nav myNav">
       <li class="presentation" ng-repeat="link in links" ng-class="{link-active:currentLink=link.value==param}">
         <a ng-href="#/home/{{link.value}}" ng-click="fetchLink(param)">{{link.title}}</a>
        </li>
   </ul>
 </div>
 <div ng-switch="fetchLink()">
      <div ng-switch-when="About Us">
            <div about-us></div>
      </div>
      <div ng-switch-when="Board Directors">
             <div board-directors></div>
       </div>
       <div ng-switch-when="Our Impacts">
             <div our-impacts></div>
       </div>
 </div>

app.js

的路由器代码上
  $scope.links = [{ title="About Us", value="about"},
                    { title="Board Directors",value="board"},
                    { title="Our Impacts", value="impact"} ];
    var myParam =$root.current.params;
    $scope.param = myParam.sec; 
   //sec has been configured in the route and get
   // the values from user's input
    $scope.fetchLink() = function() {
      var retVal='';
      var retVals = $.grep($scope.links, function(item,ind){
                          return item.value=$scope.param
                        });
        if(retVals.length>0){
            retVal = retVals[0].title;
         }

         return retVal;

         };
        };

}

当我第二次点击时,没有触发任何内容,也没有触发fetchLink()方法。

0 个答案:

没有答案