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

Things to consider before including a js library in large existing project

本文关键字:大型 项目 js 包含      更新时间:2023-09-26

我正在从事一个大型项目,它是XRMS CRM的衍生产品。不幸的是,以前的开发人员没有正确地(甚至不正确地)记录他/她的代码。现在我有了一大堆乱七八糟的PHP + JS文件。目前它不使用任何js库,使用原生js代码。出于某些原因,我想使用jQuery、prototype或mootools。当我在一些页面中使用jQuery进行一些测试时,我意识到它们工作得很好。但是由于页面太多,在所有页面上测试所有功能将是非常繁琐的。

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

考虑以渐进增强的方式包括jQuery,实现优雅的降级。如果出现问题,用户仍然可以使用该网站。

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

请参见jQuery. noconflict()模式和使用jQuery与其他库。

编写新代码时也要编写单元测试(例如使用qunit或jstestdriver),包括遗留代码的单元测试,如果可能的话。

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

在jQuery的情况下,它是美元符号($),虽然这可以被覆盖使用jQuery变量,$是在其他地方使用(称为无冲突模式)。

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