Javascript`this`语句不起作用

本·奥宾

调用此$ http请求后(带有server.refresh();

MinecraftServer.prototype.refresh = function(){
    return $http.get("http://mcping.net/api/" + this.ip).then(this.acceptData);
}

此函数thiswindow对象,而不是MinecraftServer对象:

MinecraftServer.prototype.acceptData = function(data){
    data = data.data

    if(data && data.online){
        this.online = data.online;
        //do more stuff       
    } else { // do more stuff }
}

因此,获取MinecraftServer对象不是更新对象的属性,而是window获取属性。

万一这有帮助,这是我简短的工厂代码:

.factory('MinecraftServer',function($http){
    function MinecraftServer(name, ip) { //does stuff }

    MinecraftServer.prototype.acceptData = function(data){
        data = data.data

        if(data && data.online){
            this.online = data.online;
            //do more stuff       
        } else { // do more stuff }
    }
    MinecraftServer.prototype.refresh = function(){return $http.get("http://mcping.net/api/" + this.ip).then(this.acceptData);}
    MinecraftServer.build = function(name, ip){return new MinecraftServer(name, ip)};
    return MinecraftServer;
})
丹尼尔·怀特

this作为回调使用其他this

用途.bind

return $http.get("http://mcping.net/api/" + this.ip).then(this.acceptData.bind(this));

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

JavaScript“ if”语句不起作用

来自分类Dev

Javascript / jQuery如果语句不起作用

来自分类Dev

javascript if语句布尔比较不起作用

来自分类Dev

基本的Javascript if语句与Jquery不起作用

来自分类Dev

switch语句在javascript中不起作用

来自分类Dev

JavaScript函数IF语句不起作用

来自分类Dev

JavaScript函数中的if语句不起作用

来自分类Dev

NodeJS / JavaScript if语句不起作用

来自分类Dev

简单的javascript if charAt语句不起作用

来自分类Dev

JavaScript中的switch语句不起作用

来自分类Dev

简单的JavaScript if语句不起作用

来自分类Dev

为什么我的涉及if语句的JavaScript计算不起作用?

来自分类Dev

基本的if else语句在javascript中不起作用

来自分类Dev

循环中的javascript递归返回语句不起作用

来自分类Dev

为什么我的JavaScript switch语句不起作用?

来自分类Dev

JavaScript,如果语句或运算符不起作用

来自分类Dev

为什么JavaScript if / else语句不起作用

来自分类Dev

如果for循环中的语句不起作用,则javascript

来自分类Dev

为什么我的JavaScript如果else语句不起作用?

来自分类Dev

JavaScript一条语句不起作用

来自分类Dev

Javascript,如果不是对所有语句都不起作用

来自分类Dev

为什么我的JavaScript switch语句不起作用?

来自分类Dev

基本的if else语句在javascript中不起作用

来自分类Dev

多文件上传验证javascript如果语句不起作用

来自分类Dev

为什么这个 if else 语句不起作用 - 水壶 javascript

来自分类Dev

Javascript If语句在自动完成中不起作用

来自分类Dev

如果语句在foreach循环javascript中不起作用

来自分类Dev

Twig IF语句不起作用

来自分类Dev

Django的if语句不起作用

Related 相关文章

热门标签

归档