是否可以在原型方法中调用另一个原型方法?如下所示。
jQuery(document).ready(function ($) {
let gui = new GUI();
let App = new App(gui);
});
var App = function(gui) {
this.gui = gui;
this.init();
return this;
};
App.prototype.init = function() {
this.gui.test();
};
var GUI = function() {
return this;
};
GUI.prototype.test = function() {
console.log("Test");
};
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
我想打电话给这样的事。
最好的问候和帮助
答案 0 :(得分:1)
是的,你当然可以。您的代码不起作用的唯一原因是您在第3行 shadowing App
。
工作代码:
jQuery(document).ready(function ($) {
let gui = new GUI();
let app = new App(gui);
});
var App = function(gui) {
this.gui = gui;
this.init();
return this;
};
App.prototype.init = function() {
this.gui.test();
};
var GUI = function() {
return this;
};
GUI.prototype.test = function() {
console.log("Test");
};
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>