第一次单击时,模板未显示路由后的绑定数据-AngularJS
尝试从索引页路由到其他视图模板。最初,加载主索引页上的列表,并在ng视图中加载main.html,显示其文本内容。“MainCtrl”中的数据广播正确,工作正常。现在,混淆的是,当单击列表中的项目时,它会被路由到内容模板(content.html),但内容在第一次单击列表时不会显示绑定值。但是,在第二次单击后,它开始显示从MainCtrl广播的绑定值第一次单击时,模板未显示路由后的绑定数据-AngularJS,angularjs,angularjs-service,route-provider,ngroute,angular-template,Angularjs,Angularjs Service,Route Provider,Ngroute,Angular Template,尝试从索引页路由到其他视图模板。最初,加载主索引页上的列表,并在ng视图中加载main.html,显示其文本内容。“MainCtrl”中的数据广播正确,工作正常。现在,混淆的是,当单击列表中的项目时,它会被路由到内容模板(content.html),但内容在第一次单击列表时不会显示绑定值。但是,在第二次单击后,它开始显示从MainCtrl广播的绑定值 <body ng-app="myApp"> <div ng-controller="MainCtrl">
<body ng-app="myApp">
<div ng-controller="MainCtrl">
<ul ng-repeat="value in msg" ng-click="setSelectedValue(value)">
<li>
<a href='#/content'>{{ value }}</a>
</li>
</ul>
</div>
<div ng-view=""></div>
不确定第一次单击时不绑定数据的确切原因是什么,即使模板立即加载。任何帮助或想法都将不胜感激。搔了一会儿头。
<ul ng-repeat="value in msg" ng-click="setSelectedValue(value)">
签出
ng单击=“设置选定值(值)”
part。似乎您的单击将通过setSelectedValue(value)
功能处理ng repeat
和ng click
应该在li上
<ul>
<li ng-repeat="value in msg" ng-click="setSelectedValue(value)">
<a href='#/content'>{{ value }}</a>
</li>
</ul>
-
这可能是因为`ng click=“setSelectedValue(value)”`尝试了这一点,没有任何区别。如果没有ng click,列表中选定的值甚至不会广播到服务。第一次单击时,content.html加载良好,但是在ContentCtrl
中,它从不进入$scope.$on
内,而是读取$scope.$on
外的所有内容。只有在第二次单击之后,它才会进入$scope.$on
。所以,我不明白为什么它会这样运作。
<ul ng-repeat="value in msg" ng-click="setSelectedValue(value)">
<ul>
<li ng-repeat="value in msg" ng-click="setSelectedValue(value)">
<a href='#/content'>{{ value }}</a>
</li>
</ul>