【问题标题】:Jquery AJAX return raw data or ready-to-use HTML? [duplicate]Jquery AJAX 返回原始数据还是现成的 HTML? [复制]
【发布时间】:2015-09-17 22:21:30
【问题描述】:
我正在使用 Jquery mobile 构建一个移动应用程序。我需要从 API 请求并在应用内显示的一些数据。
现在我有两个选择:
我的 API 返回 Json,我需要一些 Javascript 将其格式化为
显示在我的应用程序中(它是一个列表,所以我会遍历它并
附加到列表中)
我的 API 返回现成的 HTML,我只需要在其中包含一些
容器。对于这种情况,我找到了这种方法:$( "#result" ).load("ajax/test.html" );
哪个是最佳实践,您将如何实现它
【问题讨论】:
标签:
javascript
jquery
html
ajax
【解决方案1】:
我当然看到它是双向的。以下是一些您可以考虑的“明线规则”建议。
(1) 如果内容将被应用程序视为“黑匣子”...... “不要看,我们不必与之交互,我们只需要这里需要做的是显示它,不管它是什么" ...那么让服务器为你完成所有工作可能是完全合适的。 (特别是如果有很多可能性,和“服务器会最清楚,”和“应用程序真的不必放弃。”)你希望避免在应用程序和服务器之间创建不必要的依赖关系或重复。
但是……
(2) 如果内容是 app 必须与之交互的东西,和/或需要“样式”或类似的东西,那么 中的逻辑>app 可能应该这样做。您希望避免在服务器和应用程序之间创建不必要的依赖关系或重复。 (请注意本段中“服务器”和“应用程序”这两个词是如何颠倒过来的。)
这个概念有时被称为“关注点分离”。如果无论如何是“服务器比应用程序更关心”并且“应用程序可以承受'不关心'”,那么服务器可以移交既成事实. 否则,它可能应该把数据交给你。
在任何情况下:“这是一个工程判断要求你,工程师,做出和捍卫。”