在大型现有项目中包含js库之前需要考虑的事项

时间:2011-07-18 06:54:34

标签: php javascript jquery crm

我正在开发一个大型项目,它是XRMS CRM的衍生产品。不幸的是,之前的开发人员没有正确(甚至不正确地)记录他/她的编码。现在我有一大块凌乱的PHP + JS文件。 Currectly它不使用任何js库并使用本机JS代码。出于某些原因,我想利用jQuery,原型或mootools。当我在某些页面中进行一些包含jQuery的测试时,我意识到它们工作正常。但由于页面太多,测试所有页面上的所有功能将非常繁琐。

我想知道在应用任何这些js库之前我应该​​考虑的关键点。

2 个答案:

答案 0 :(得分:2)

考虑以progressive enhancement方式包含jQuery,实现graceful degradation。如果出现问题,用户仍然可以使用该网站。

将jQuery放在页面底部有助于提高页面加载速度,并可以避免一些潜在的冲突。

另请参阅jQuery.noConflict()模式和Using jQuery with other libraries

编写新代码也写单元测试(例如使用qunitjstestdriver,包括遗留代码的单元测试是否可行。这在refactoring时有很大帮助

答案 1 :(得分:1)

使用像jQuery这样的库,整个代码库都包含在单个变量的范围内,故意避免与现有代码冲突。

在jQuery的情况下,它是美元符号($),尽管可以覆盖它以使用jQuery变量$在其他地方使用(称为noconflict模式) )。

这意味着只要您的现有代码不使用$变量,您就可以安全地包含该库,而不必担心它会遍历现有代码。