關於vue中node_modules中第三方模塊的修改使用

最近用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

相關文章
相關標籤/搜索