我需要validateText
函数来调用modalFunc
。我该怎么做?
function geoAlert(lodash) {
var me = this;
return {
modalFunc: function(text) {
alert(text);
},
validateText: function() {
modalFunc("hello")
}
}
}
当我运行时:
geoAlert.validateText();
我会得到这个错误:
ReferenceError: modalFunc 未定义
使用 me.modalFunc("hello")
也不起作用。请帮助并提前致谢。
最佳答案
看起来您正在尝试使用揭示模块模式;返回一个有效提供方法的对象。为此,您需要按如下方式执行主函数(注意末尾的“()”意味着它将立即被调用):
var geoAlert = function(lodash) {
return {
modalFunc: function(text) {
alert(text);
},
validateText: function() {
this.modalFunc("hello")
}
};
}();
geoAlert.validateText('Some text');
我所做的另一个更改是 modalFunc 需要以 this 为前缀,因为它作为与 validateText 相同的返回对象的一部分存在。
关于javascript - 使用同一对象中的其他方法调用对象中的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41384868/