javascript - JavaScript 中的 MVC : Should i use callback when instantiating the three entities?

标签 javascript model-view-controller callback

我尝试在 javascript 中使用 MVC 模式,但偶然发现了一个问题。

我正在使用这个:

var model = new Model();
var view = new View(model);
var controller = new Controller(view, model);

引用这三个实体:

//MODEL(empty yet but it's normal)
function Model() {
}

//VIEW
function View(model) {
    this._model = model;
    this._drawLogin();
}

//CONTROLLER
function Controller(model, view) {
    this._model = model;
    this._view = view;
    this._displayView();
    console.log(view);
}

在我的 Controller 的 console.log(view) 中,它返回一个空对象,我不明白为什么。

Object {  }

这与回调函数有关吗?我是否应该通过回调函数实例化每个实体,以确保一个实体先于另一个实体创建?

我尝试了类似的方法但没有成功:

function createModel(createView) {
    model = new Model();
    createView = function(createController) {
        view = new View(model)
        createController = function() {
            controller = new Controller(model,view);
        }
    }
}

最佳答案

我确实需要回电。这是我所做的。 :

var model;
var view;
var controller;

function createMVC(createModel, createView, createController) {
    createModel();
    createView();
    createController();
}
function createModel() {
    model = new Model();
}
function createView() {
    view = new View(model);
}
function createController() {
    controller = new Controller(model, view);
}
createMVC(createModel, createView, createController);

关于javascript - JavaScript 中的 MVC : Should i use callback when instantiating the three entities?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35702964/

相关文章:

javascript - 为什么我的购物车总计无法使用 onclick 和toggle 工作?

javascript - 更改对象(如果存在)

安卓 M : System permission vs WebView location permission

javascript - 何时使用返回或回调?

javascript - THREE.js 文本未显示且没有任何错误

javascript - 如何检查传递给 Typescript 中函数的参数?

ruby-on-rails - 如何阻止 Rails Controller 中的业务逻辑

ios - 模型、 View 和 Controller 之间的连接

cakephp - 如何将变量从 Controller 传递到 cakephp 中的所有 View 文件(.ctp)

javascript - $resource.save 使用 "Resource"而不是简单的 ID 进行响应