Javascript 带有ng init的变量集未定义
我是AngularJS的初学者(就这一点而言,JS也是),我有以下问题 以下是html模板:Javascript 带有ng init的变量集未定义,javascript,angularjs,ionic-framework,ionic,Javascript,Angularjs,Ionic Framework,Ionic,我是AngularJS的初学者(就这一点而言,JS也是),我有以下问题 以下是html模板: <ion-view view-title="Playlists"> <ion-content> <ion-list> <ion-item ng-repeat="playlist in playlists" ng-init="pageID=playlist.id" href="#/app/music/{{playlist.id}}"&g
<ion-view view-title="Playlists">
<ion-content>
<ion-list>
<ion-item ng-repeat="playlist in playlists" ng-init="pageID=playlist.id" href="#/app/music/{{playlist.id}}">
{{playlist.title}} {{pageID}}
</ion-item>
</ion-list>
</ion-content>
</ion-view>
{{pageID}}在页面上正确显示,但是在控制台中,pageID未定义。我做错了什么?pageid在its控制台中是
未定义的
,因为您没有在控制器中定义它,而只是在ng init中赋值。因此,您可以在控制器中使用此选项,这样您就不会得到未定义的
.controller('MusicCtrl', function($scope) {
$scope.pageID = 1;//just an example
您到底想要实现什么?我只是尝试访问控制器中的playlist.id,我的想法是将$scope变量设置为playlist。id@Guillaume那你为什么不在controller中实现它,而不是ng init?@Vinet当我点击其中一个播放列表时,我转到这个视图:我试图实现的hre是让我的视图标题成为相应播放列表的标题。。。我对所有这一切都非常陌生,可能正在制定我的问题awkwardly@Guillaume我不知道你为什么要用
wathcers
。观察者观察变量值并查看值是否发生变化。在您的情况下,您应该尝试$scope.$watch('pageID',function(newValue,oldValue){console.log(newValue);})代码>
.controller('MusicCtrl', function($scope) {
$scope.pageID = 1;//just an example