Javascript 从可观察对象中显示为未定义的默认值
下面的示例代码段的结构与我的视图模型和控制器类似。你知道为什么在实例化视图模型时,可观察对象中的默认值不会实例化吗? 如果在控制器中的另一个方法中,我尝试访问,则未定义Javascript 从可观察对象中显示为未定义的默认值,javascript,nativescript,Javascript,Nativescript,下面的示例代码段的结构与我的视图模型和控制器类似。你知道为什么在实例化视图模型时,可观察对象中的默认值不会实例化吗? 如果在控制器中的另一个方法中,我尝试访问,则未定义 /** * some-view-model.js */ var Observable = require('data/observable').Observable; function SomeViewModel(){ var model = new Observable({ name: "",
/**
* some-view-model.js
*/
var Observable = require('data/observable').Observable;
function SomeViewModel(){
var model = new Observable({
name: "",
someBool: true
});
return model;
}
module.exports = SomeViewModel;
/**
* some-view.js
*/
var SomeViewModel = require('some-view-model');
var SomeView = function(){};
var ViewModel = new SomeViewModel();
SomeView.prototype.viewLoaded = function(args){
// do some stuff
};
SomeView.prototype.foo = function(){
// below returns undefined rather than true, why??
ViewModel.get('someBool')
};
module.exports = new SomeView()
假设加载某个视图文件的零件正在执行以下操作:
var someview = require('some-view.js');
someview.foo();
那么这在NativeScript中应该可以正常工作;我刚刚在运行时的v1.7.1和2.01中测试了这一点,我的ViewModel.get('someBool')返回true