在大型现有项目中包含js库之前需要考虑的事情
Things to consider before including a js library in large existing project
我正在从事一个大型项目,它是XRMS CRM的衍生产品。不幸的是,以前的开发人员没有正确地(甚至不正确地)记录他/她的代码。现在我有了一大堆乱七八糟的PHP + JS文件。目前它不使用任何js库,使用原生js代码。出于某些原因,我想使用jQuery、prototype或mootools。当我在一些页面中使用jQuery进行一些测试时,我意识到它们工作得很好。但是由于页面太多,在所有页面上测试所有功能将是非常繁琐的。
考虑以渐进增强的方式包括jQuery,实现优雅的降级。如果出现问题,用户仍然可以使用该网站。
将jQuery放在页面底部将有助于提高页面加载速度,并可能避免一些潜在的冲突。
请参见jQuery. noconflict()模式和使用jQuery与其他库。
编写新代码时也要编写单元测试(例如使用qunit或jstestdriver),包括遗留代码的单元测试,如果可能的话。
使用像jQuery这样的库,整个代码库都包含在单个变量的范围内,故意避免与现有代码发生冲突。
在jQuery的情况下,它是美元符号($
),虽然这可以被覆盖使用jQuery
变量,$
是在其他地方使用(称为无冲突模式)。
这意味着只要您现有的代码不使用$
变量,您就可以安全地包含库,而不必担心它会影响您现有的代码。
相关文章:
- 正在将数据主题添加到所有项目
- 动态地改变“”的URL;添加新项目”;链接使用javascript/jquery
- 在jstree中,如何将指定的节点集中到大型树上
- 如何检查管道中未定义的项目
- 有没有一种方法可以添加相同的项目val=“0”;4〃;到JavaScript中数组的每个对象
- 学生搜索项目jquery/javascript
- 如何获取不属于我项目的上一页的URL
- 以块形式呈现大型HTML表
- Dojo:访问dijit.form.Select中单击的项目
- 就像话语之于Ember.js,什么是一些大型开源项目编写的rails + angularjs
- 针对大型项目(社交媒体)的 Javascript/jQuery 优化
- 将 emacs 用于大型多文件 JavaScript 项目
- 将NodeJS用于大型项目
- 大型Angular应用的项目结构
- 开始处理大型项目
- 大型Html5项目的更好实践?(主要是Javascript,但一些Html/Css)
- 关闭HTML点击模式,跨大型项目
- 附加JavaScript事件(对于大型web项目)的最佳实践是什么?
- 在大型现有项目中包含js库之前需要考虑的事情
- 在大型web项目中,如何将Javascript库更新到最新版本?