从匿名函数访问控制器变量
Accessing controller variable from anonymous function
我正在编写AngularJS应用程序。我需要从SQLite3数据库加载数据。我使用的架构是:我有一个使用express的Node.js服务器,它通过socket.io与angular.js应用程序通信。所以,我从客户端请求从数据库中获取信息,服务器收集信息并将其发送回客户端。
在这里,我试图初始化一个对象数组:main.meds
(使用angular.js routeProvider,我将'MainCtrl'引用为'main'):
angular.module('medsOrmApp').controller('MainCtrl', function() {
this.socket = io();
this.meds = [];
this.socket.emit('loadMeds', 'gimme the list !');
this.socket.on('medsResponse', function(data) {
console.log(data);
for (var i = 0; i < data.length; i++) {
var tmp = {};
tmp.id = data[i].ID_MEDICAMENTO;
tmp.nombre = data[i].NOMBRE_MEDICAMENTO;
tmp.cantidad = data[i].CANTIDAD_DISPONIBLE;
tmp.lab = data[i].LABORATORIO;
meds.push(tmp); // ERROR: 'meds' is not defined
}
});
});
问题是我无法从匿名函数内部访问"meds"。我尝试过meds
和this.meds
,但都没有成功。
如果使用$scope
,这不会起作用吗?
angular.module('medsOrmApp').controller('MainCtrl', function($scope, $timeout) {
this.socket = io();
this.meds = [];
this.socket.emit('loadMeds', 'gimme the list !');
this.socket.on('medsResponse', function(data) {
console.log(data);
for (var i = 0; i < data.length; i++) {
var tmp = {};
tmp.id = data[i].ID_MEDICAMENTO;
tmp.nombre = data[i].NOMBRE_MEDICAMENTO;
tmp.cantidad = data[i].CANTIDAD_DISPONIBLE;
tmp.lab = data[i].LABORATORIO;
this.meds.push(tmp); // ERROR: 'meds' is not defined
}
});
});
编辑:添加this.meds.push
怎么样?
相关文章:
- 否'访问控制允许来源'标头存在于IISNOde中请求的资源(AngularJS+NodeJs)上
- CORS:否'访问控制允许来源'header-但是php设置头文件
- "访问控制允许起源”;通过javascript从http页面调用同一网站的httpsurl时出现问题
- CORS:访问控制允许原点不等于提供的原点
- angularjs:访问angular控制器中的jquery变量
- 飞行前响应中的访问控制允许标头不允许Angularjs请求标头字段访问控制允许标题
- django没有访问控制允许删除原始标头
- HTML5 Canvas访问控制允许原始错误
- Android、iOS和Windowsphone的PHP访问控制
- 访问控制台中的匿名函数
- 访问控制允许标头不允许X-Requested-Wise
- 我如何设置HTTP头“;访问控制允许起源”;用于来自thttpd web服务器的HTTP响应
- Ajax—“;访问控制允许起源”;错误
- XMLHttpRequest无法加载url Origin访问控制允许Origin不允许null
- 访问控制允许来源,即使在同一域上
- jQuery 表单插件:XMLHttpRequest 无法加载 http://www...没有“访问控制允许来源”
- Javascript 受客户端和访问控制允许源的限制
- 访问控制允许方法不允许删除
- 即使在服务器将访问控制允许原点设置为“*”之后,也会收到javascript错误
- AngularJS 没有“访问控制允许来源”标头