塞特不叫

时间:2017-12-02 00:16:39

标签: nativescript getter-setter setter

我正在使用NativeScript构建一个简单的位置跟踪器。当前位置和过去的位置都存储在名为scope的视图模型中并不断更新。当新的位置数据可用时,将调用setter addLocation。

var scope = new observableModule.fromObject({

    "locations": [],
    "lastLocation": {
        "latitude": 0,
        "longitude": 0,
        "altitude": 0,
        "horizontalAccuracy": 0,
        "verticalAccuracy": 0,
        "direction": 0,
        "timestamp": "No location yet",
        "speed": 0
    },

    set addLocation(loc) {
        console.log('Setter called');
        this.lastLocation = loc;
        this.locations.push(loc);
    }
});

将其作为视图模型导入页面。 setter的调用方式如下:

scope.addLocation = loc;

其中loc是GeoLocation插件中watchLocation()的输出。

似乎没有触发setter。控制台消息永远不会出现。我尝试添加其他setter,但它们也不起作用。吸气剂正在发挥作用。发生了什么事?

0 个答案:

没有答案