新版npm本来是不支持本地直接修改 npm 包内容的,官方推荐方案是 fork 一个新git库,然后从哪里 npm intall 自己爱怎么改就怎么该,那你自己的新仓库
但是问题来了:
但是现实是很多时候真的是 npm的只有一点瑕疵,需要该一样代码,值不得官方推荐的那一套,何况还要github国内又不快,直接改了,node_modules里面的文件
只要有新的npm任意操作就会从线上纠正过来,简直封掉啦
npm现在不想走python管理的老路只能强制不让乱该,至少node module 里面的东西完全不让该,添加一个空目录都不行的
虽然有npm link等办法,但是还是不方便的,比如干扰了全局的node,比如不再项目目录ide开发不方便
最实用的版本,在线版本该怎么装还得怎么装,要不下面的依赖没有了也出error的
然后自己再建一个根目录,每次npm操作后,覆盖一下就ok,等到线上版本修复了,赶紧用最新版本吧
-------------
解决办法,把修改过的 node module 放到另外一个目录,然后安装这个 module,就是安装本地来源的模块
npm install node_modules_my/react-native-gifted-chat
会形成:
"react-native-gifted-chat": "file:node_modules_my/react-native-gifted-chat",
所以 npm install 的来源大概常用有三种:
①官方应用商店 npmjs.org
npm install react
②git或者线上来源
"react-native-syan-image-picker": "git+https://github.com/syanbo/react-native-syan-image-picker.git",
③本地来源
如上面所示,软链接形式,修改很方便