最近用vue在作一个项目,github用上找了一个日历插件,intall到了本项目中,配好之后发现插件的样式风格和项目整体风格相差较大,因此就像这个改一下插件风格,
html
第一种方法:我直接在父组件中将style标签的scoped的属性去掉了,在父组件中直接写了想要的样式,重叠样式所有!important,结果确实生效了vue
第二种方法:本想这个要是样式这么改,还有路可走;要是插件的底层方法呢,若是有对外开发的修改入口还行,要是没有,可咋办,因而想着能不能直接去改下这个插件,这样直接一锤子到底, node
在node_modules中直接找到了这个插件,查阅了这git
刚开始直接啥也没管,直接改了src下的文件死活不生效github
最后看了下这个插件的package.json;一看,靠,原来主文件,是dist目录下的index.js;这个是已经打好的用于生产环境的包,我改的src下的测试环境的文件,固然无效npm
怎么办才能有效呢,固然是从新打包,问题的关键是怎样在node_modules下在这个插件下从新build,查了这个插件下,根本没有这个插件的node_modules依赖(插一句git文件到github时node_moudles文件是忽略的),因此在插件下直接npm run build各类报错,json
后来想了下,我把这个插件包拷出来,而后vs打开,不是没有node_modules依赖吗,有package.json。直接npm install ;这样的package.json里面的标写的依赖所有安装,而后有了依赖,这时去改这个插件src下的文件;服务器
改好全部的一切后直接npm run build;从新生成了新的dist 下的index.js;把这个新生成的index.js拷贝覆盖到原来那个项目下对应的位置,覆盖,这样最后的效果妥妥额成功了!哈哈哈!!!测试
能够看下要修改的node_modules项目中的package.json,里面会有一个属性,相似:ui
"main": "dist/index.min.js",
表示的是该项目的入口文件,咱们平常开发的项目中引用的其实就是这一个文件,如果直接改这个index.min.js,重启一下就能生效。
PS: 不过通常入口文件都是打包后的js,很难直接改,都是改src目录下的文件后从新build。
--------------------问题的关键是怎样在node_modules下在这个插件下build,查了这个插件下根本没有这个插件的node_modules依赖,因此在插件下直接npm run build各类报错,解决方法是拷贝出来改好后直接去覆盖,
--------------------通常不建议这么干,太暴力了,另外团队协助时,其余队友和服务器上的代码不能保持一致
原文出处:https://www.cnblogs.com/yogic/p/10955428.html