【问题标题】:php MVC with javascript interactionphp MVC 与 javascript 交互
【发布时间】:2015-10-13 10:03:01
【问题描述】:

好的,我已经构建了一个小的 php MVC 框架。它基本上有以下几层:

  • 控制器:处理输入,根据输入从服务调用函数,通常将变量转发到视图(并渲染)

  • 域层:拆分成...

  • ...模型:领域实体,基本上只是 setter 和 getter 验证数据并提供一致的 视图的数据接口
  • ...映射器:加载/存储模型 从/到数据库
  • ...services:封装领域逻辑,如 “注册用户”或“发送消息”

  • views:基本上只是带有一些 php 的 html。

好的,到目前为止效果很好。但是现在我想添加一些 javascript 功能。我不确定如何正确执行此操作。我知道我应该向我的 php 脚本发送后请求,​​但我的控制器 f.e.不提供任何返回值,而只是输出视图。所以如果我想用 js 检索一个用户的朋友列表,我会..

  • a) 提供“javascript 访问服务”,它在域服务的帮助下处理 javascript 请求并将结果输出为 json?我不喜欢这个,它会导致我的一些请求出现冗余。我可能对 viewFriends() 有一个常规的控制器操作,现在我还必须添加一个 javascriptService->viewFriends()。
  • b) 我的所有控制器都返回结果了吗?我什至不认为这是真的可能,因为 javascript 只能存储正在回显的内容,对吗?

这里怎么走? 谢谢。

【问题讨论】:

  • 你定义变量了吗?全局声明变量。给所有函数唯一的名字。
  • @ChiragSenjaliya:对不起,我不太明白你在说什么……

标签: javascript php model-view-controller


【解决方案1】:

如果我是你,我会考虑什么是视图,然后对你的控制器做一些小的改动,使它们能够输出不仅仅是 HTML 的视图——例如,你可能想要输出一些 JSON 数据——并且这可以被认为是一个视图。

本教程 - http://www.paulund.co.uk/use-php-to-detect-an-ajax-request 展示了如何检查请求是否为 Ajax - 因此您可以在控制器中使用此方法来决定您希望如何交付视图等。

【讨论】:

  • 好的,有可能,谢谢。希望有更多建议。
猜你喜欢
  • 1970-01-01
  • 2012-09-15
  • 2016-08-07
  • 1970-01-01
  • 1970-01-01
  • 2020-08-31
  • 1970-01-01
  • 1970-01-01
  • 2011-02-15
相关资源
最近更新 更多