我在php+mysql+jquery中为客户制作项目,现在正在学习node.js+npm angular..etc。我的问题是,经过很少的测试..要建立该项目,需要许多工具和插件来完成。如果版本不匹配,构建将失败,并且需要2-6个小时或更长时间来更新和解决问题。如果我不为我的新项目加载一些新的东西,比如插件,它们就不能工作。我必须更新节点,npm,grunt等来建立新的项目。
假设我的第一个node.js客户在1,5年后打电话给我,希望对项目做一点小更改。我说这是一个小时的工作,不是很贵。但我已经更新了所有的工具,当构建项目时,它将失败。我需要半天的时间来更新所有和修复整个项目,如果插件不再维护和repos没有了。
我们是怎么走到这一步的?制作网站/webapps变得如此复杂?
发布于 2017-11-14 19:24:47
你可以只指定你想要使用的每个插件的版本。
阅读https://docs.npmjs.com/files/package.json#dependencies
{ "dependencies" :
{ "foo" : "1.0.0 - 2.9999.9999"
, "bar" : ">=1.0.2 <2.1.2"
, "baz" : ">1.0.2 <=2.3.4"
, "boo" : "2.0.1"
, "qux" : "<1.0.0 || >=2.3.1 <2.4.5 || >=2.5.2 <3.0.0"
, "asd" : "http://asdf.com/asdf.tar.gz"
, "til" : "~1.2"
, "elf" : "~1.2.3"
, "two" : "2.x"
, "thr" : "3.3.x"
, "lat" : "latest"
, "dyl" : "file:../dyl"
}
}您不必使用最新版本。
包存储在每个单独的项目中,而不是全局存储(除非您想要,但为什么要这样做)。所以没有“我已经更新了所有的工具”。
这些东西都是经过深思熟虑的,所以不会被新版本打破。如果是这样的话,它将无法使用。
https://stackoverflow.com/questions/47284372
复制相似问题