Javascript 如果您使用Backbone.js或Spine.js,那么应该对视图的所有动态部分使用MVC,还是只对更复杂的部分使用MVC?

Javascript 如果您使用Backbone.js或Spine.js,那么应该对视图的所有动态部分使用MVC,还是只对更复杂的部分使用MVC?,javascript,backbone.js,spine.js,Javascript,Backbone.js,Spine.js,我刚刚开始使用Spine.js。我喜欢 但有时我只需要对后端进行一个简单的调用,以获取要填充的JSON数据,例如,一个在填充后不会改变的导航栏。在这里,让前端模型和控制器看起来有些过分,因为我可以使用一个简单的jQuery调用,将JSON响应推送到模板中,并将结果注入DOM 这种混合方法有什么缺点吗,其中一些视图由JavaScript MVC管理,而另一些视图则由简单的jQuery Ajax代码注入?我认为您应该这样做 我认为你们的选择不应该是一个困难的问题,而是若你们建立了一个标准,就要坚持下

我刚刚开始使用Spine.js。我喜欢

但有时我只需要对后端进行一个简单的调用,以获取要填充的JSON数据,例如,一个在填充后不会改变的导航栏。在这里,让前端模型和控制器看起来有些过分,因为我可以使用一个简单的jQuery调用,将JSON响应推送到模板中,并将结果注入DOM


这种混合方法有什么缺点吗,其中一些视图由JavaScript MVC管理,而另一些视图则由简单的jQuery Ajax代码注入?

我认为您应该这样做


我认为你们的选择不应该是一个困难的问题,而是若你们建立了一个标准,就要坚持下去。这样做通常最终会节省时间。

我说你应该为所有人这样做


我认为你们的选择不应该是一个困难的问题,而是若你们建立了一个标准,就要坚持下去。这样做通常最终会节省时间。

MVC背后的整个理念是分离关注点。模型处理数据,视图处理显示,控制器处理流,在某些情况下还处理业务逻辑。当然,您可以在视图中轻松地进行jQuery调用;毕竟,JavaScript是完全开放的,只要你能得到一个引用,你就可以自由地做你想做的事情。但这样做会破坏你的观点所扮演的角色的模式,弄乱你的观点所扮演的角色。总之,如果你采用这种设计模式,就要坚持下去。它将使管理应用程序从现在起几个月甚至几年变得更加容易,因为您不必考虑组件的角色。

MVC背后的整个思想是分离关注点。模型处理数据,视图处理显示,控制器处理流,在某些情况下还处理业务逻辑。当然,您可以在视图中轻松地进行jQuery调用;毕竟,JavaScript是完全开放的,只要你能得到一个引用,你就可以自由地做你想做的事情。但这样做会破坏你的观点所扮演的角色的模式,弄乱你的观点所扮演的角色。总之,如果你采用这种设计模式,就要坚持下去。这将使管理应用程序从现在起几个月甚至几年变得更加容易,因为您不必考虑组件的角色。

好吧,当遇到一次性注入的JS时,我总是问的第一个问题是,这是否应该首先发生在后端

至于一致性问题,如果用“错误”的方式不费什么力气,那就去看看会发生什么。如果需要的话,在以后更改它并不是一件繁重的工作,我真的不明白为什么为了保持一致,你会在应用程序上浪费时间和/或不必要的开销


重要的是,在下一个开发的代码中,您要清楚地表明,您没有通过MVC方法来处理这些问题。但最终,该工具会帮助您,而不是阻碍您。对于css、html和JavaScript等关注点的分离,我们都有一些例外。重要的是要理解规则的真正价值,这样当你打破规则时,你就知道要权衡什么了。在这种情况下,我看不到太多的问题。

好吧,当遇到一次性注入的JS时,我总是问的第一个问题是,这是否应该首先发生在后端

至于一致性问题,如果用“错误”的方式不费什么力气,那就去看看会发生什么。如果需要的话,在以后更改它并不是一件繁重的工作,我真的不明白为什么为了保持一致,你会在应用程序上浪费时间和/或不必要的开销


重要的是,在下一个开发的代码中,您要清楚地表明,您没有通过MVC方法来处理这些问题。但最终,该工具会帮助您,而不是阻碍您。对于css、html和JavaScript等关注点的分离,我们都有一些例外。重要的是要理解规则的真正价值,这样当你打破规则时,你就知道要权衡什么了。在这种情况下,我看不到太多的答案。

这个问题没有“正确”的答案。似乎没有建设性(根据SO指南)。此问题没有“正确”答案。似乎没有建设性(根据SO指南)。