没有客户端JavaScript的Backbone.js

我正在研究使用Backbone.js和node.js来编写一个小型的Web应用程序。 在客户端和服务器之间共享代码是有吸引力的。

我无法弄清楚没有JS(和search引擎)的客户端应该如何与网站进行交互。 如何在没有客户端JavaScript的情况下进行validation和渲染?

当然,我想这样做没有代码重复。 对我来说,Backbone.js和其他服务器端js的意义在于,您可以在服务器和客户端上拥有相同的表单validation和模板/视图生成。

如果你的视图是用javascript编码的,那么search引擎就会被误认为是一个更传统的网页(一个url,一个状态,一个网页),而不理解javascript。

如果你想提供丰富的体验和支持search引擎,你需要使用优雅的升级。

随着优雅升级,你代码你的网站没有客户端JavaScript,让这一切工作很好漂亮。 然后你使用JavaScript来升级的经验。 在大多数情况下,这实际上更容易,因为升级过程可以自动化。 请参阅https://github.com/browserstate/ajaxify

validation客户端上的表单数据是一种很好的做法,因为如果用户不在服务器上进行validation,则可能不必重新input写入的内容。 在客户端进行validation不会消除在服务器上进行validation的需要,因为您的问题有助于指出,因为不能保证JavaScript将运行,甚至不能使用您的服务器上使用的表单。