gpt4 book ai didi

javascript - MVP设计模式中的业务逻辑在哪里?

转载 作者:行者123 更新时间:2023-11-28 10:36:53 26 4
gpt4 key购买 nike

我试图通过一个简单的示例来了解 MVP 模式的工作原理。

我想在用户单击按钮时显示框内容。

function reveal(number){
let content;
if(number==1) content = "candy"
else if(number==2) content = "chicken"
else content = "pencil"
document.getElementById("box").innerHTML = "It's a " + content
}
<button onclick="reveal(1)"> box 1</button>
<button onclick="reveal(2)"> box 2</button>
<button onclick="reveal(3)"> box 3</button><br>
<h3 id="box"> </h3>

是的,我确实知道在这段代码中使用如此复杂的模式并不是最好的主意。我只是觉得这个例子很容易理解。

现在我的问题:

  1. 我应该将逻辑(if...elseif..)放在演示器中还是模型中?
  2. 对于问题 1,如果我将逻辑放在 Presenter 中,是否意味着模型将毫无用处?

最佳答案

IMO它应该进入 View ,不需要去服务器并等待响应,当用户做出选择时数据可以立即加载。

MVP 模式包括

事件处理=演示者

DOM 操作 = View

AJAX 调用 = 模型

您所展示的是一个 HTML 剪辑和一小部分相应的 javascript,它们一起操作 DOM。可以说javascript部分处理用户选择引起的事件并将其放在MVP的Presenter部分

关于javascript - MVP设计模式中的业务逻辑在哪里?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60224313/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com