可以't更新angular.js中的变量
Can't update variable in angular.js
我正在用angular.js构建一个Ionic应用程序,我几乎完成了,但现在我遇到了一个小麻烦。
在我的templates/menu.html
中,我有:
<ion-item nav-clear menu-close ng-click="filterByPeriod(weekBegin, currentDate)">Filter </ion-item>
和我的控制器js:
.controller('Home', ['$scope', '$ionicModal', '$cordovaGeolocation', function($scope, $ionicModal, $cordovaGeolocation) {
App = {
init: function() {
setTimeout(function(){
$scope.map = new google.maps.Map(document.getElementById("map-canvas"), mapOptions);
}, 200);
},
};
$scope.addMarkersToMap = function(reports, map) {
var newCenter = new google.maps.LatLng(reports[0].latitude, reports[0].longitude);
map.setCenter(newCenter);
map.setZoom(12);
}
$scope.filterByPeriod = function(beginDate, endDate) {
var cityId = window.localStorage.getItem('cityId');
serviceReports.getDenunciasFromPeriod(cityId, beginDate, endDate)
.success(function(reports){
$scope.addMarkersToMap(reports.dados, $scope.map);
});
}
App.init();
}]);
我已经尝试使用封装此方法的`$scope.apply(function(){})来完成此操作,但通过两种方式我都会捕获此错误:
http://cl.ly/image/200O1d2F1C46
有人知道如何解决这个问题吗?
映射对象未正确初始化。我怀疑你的document.getElementById("map canvas")在控制器中不应该正确工作:DOM操作与角度摘要循环不同步。
更喜欢使用指令,你可以看看我是怎么做的:
https://github.com/bennekrouf/ng-formation/blob/master/app-directives/app/app.js
相关文章:
- JS变量返回的对象不是值
- 我怎么能让流星简单模式中的一个字段等于一个js变量,并且仍然让用户填写简单模式的其余部分
- 向AngularJS目录添加JS变量
- 在使用cq:include包含外部JS之前,如何在JSP中包含全局JS变量
- 将PHP数组传递给js变量
- 如何从谷歌脚本中获取JS变量
- 敲除js变量设置类似于调用函数
- 带破折号的Ractive.js变量
- jQuery在MVC应用程序中设置JS变量
- HTML按钮获胜't更改JS变量
- 在跨子域上将JS变量从子Iframe传递给父JSP
- 理解bootstrap.js变量声明
- 使用HTML标记中的JS变量在Javascript中动态创建HTML
- 访问JQuery中的vue-js变量
- AJAX将JSON数组保存到多个JS变量中
- 在构造控制器、服务等时作为函数参数传递之前列出的角度 JS 变量
- 将JS变量作为文本返回以发送到Google Analytics
- 将JS变量传递到php数组
- 如何将JS变量异步发送到Rails
- 正在读取JS变量