Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jquery-ui/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/xpath/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何构建基于jquery的大型网站?_Jquery_Jquery Ui_Backbone.js_Twitter Bootstrap_Mustache - Fatal编程技术网

如何构建基于jquery的大型网站?

如何构建基于jquery的大型网站?,jquery,jquery-ui,backbone.js,twitter-bootstrap,mustache,Jquery,Jquery Ui,Backbone.js,Twitter Bootstrap,Mustache,我想开始一个新项目,一个大型jquery应用程序/网站。我希望该网站的功能与twitter或github非常相似,非常动态,非常流畅/流畅,等等 我的问题是我不知道从哪里开始。我读了无数的博客文章,调查了许多JS框架/模板和MVC类型的系统 当我编写JS代码时,是否应该将所有内容都放在一个文件中?或者我应该将我编写的每个插件分解成单独的文件,然后使用像Respond.JS这样的JS加载程序 我想我需要一个模板系统来让标签导航正常工作,所以我正在研究Backbone.JS或Mustache/han

我想开始一个新项目,一个大型jquery应用程序/网站。我希望该网站的功能与twitter或github非常相似,非常动态,非常流畅/流畅,等等

我的问题是我不知道从哪里开始。我读了无数的博客文章,调查了许多JS框架/模板和MVC类型的系统

当我编写JS代码时,是否应该将所有内容都放在一个文件中?或者我应该将我编写的每个插件分解成单独的文件,然后使用像Respond.JS这样的JS加载程序

我想我需要一个模板系统来让标签导航正常工作,所以我正在研究Backbone.JS或Mustache/handlebar.JS

有人有这样的起点吗?也许是我可以遵循的样板解决方案/开发模式


谢谢

这在很大程度上取决于您对“大型”的定义以及您正在部署的组件类型。我很怀疑我们是否能够充分了解你们的环境,告诉你们该怎么做,但我可以给你们一些一般性的建议:

  • 如果您需要页面上的组件(例如,数据的交互式可视化),请尝试找到现成的插件

  • 如果现成的插件不可用,请以插件的形式编写组件。这与jQuery的设计密切相关,并确保了高度的可重用性

  • 尝试将Javascript与HTML分开。通常,HTML是一个充满ID或类的页面,这些ID或类可用作Javascript链接的“装入点”。Javascript文件通常如下所示:

    $(文档).ready(函数(){

    //开始进行AJAX调用,设置页面

    //元素,以及您需要的任何其他内容

    }))

  • 考虑到Javascript绑定到页面,在为每个页面提供自己的Javascript文件的同时,尽量减少页面数量。如果页面特别复杂或使用可重用的include文件,请将Javascript分离为较小的文件,这些文件仅控制页面的一部分。可以根据需要调用任意多个$(document).ready()


  • 祝你好运

    一旦您的JS完成,在生产中将其缩小:


    另外,如果您使用多个jquery插件(如jquery UI),请将它们都放在同一个文件下以提高性能。

    很抱歉,但我怀疑,在不了解项目本身的情况下,任何一种用法都不能告诉您应该使用哪些JavaScript框架。嗯。。。也许我们能解决一些问题。我希望一般来说,应用程序本身并不重要。很高兴知道更多,但我想在这里概括一下。我不认为基于功能/目的来处理一个应用程序与另一个应用程序有多大意义。给定我提供的约束(JS框架)的每个应用程序至少应该有相似的起点。为了便于交谈,想象一下我将构建一个GMail克隆版……)谢谢你的帮助,你的建议很有道理。我试图避免编写支离破碎的JS代码……这意味着它有一个可重复的模式(一般来说)。我不想养成只调用方法并将它们分配给选择器的习惯。我想知道在初始化器函数中构建所有HTML装入点是否有意义。然后,一旦所有元素都出现了,就开始加载应用程序的各个部分:菜单、数据表、详细视图等。。。你对“搭建”一个JS项目有什么建议吗?这会给你的具体情况带来一些困难。如果您试图创建一个类似桌面的应用程序,那么您可能希望将JS代码按主要组件划分成一个文件。如果您正在查看从一页到另一页重复的组件,请将可重复的内容放在其自己的JS文件中,而不是页面的JS文件中。如果您正朝着下拉式组件进行架构,请将您的JS与下拉式组件对齐。简而言之,做你认为最合乎逻辑的事情。如果你所做的没有意义,重构。