第一個npm組件的遇到的問題,以及思考

勇敢的嘗試,你會發現並沒有那麼難!

不知道爲啥對於未知的領域總是充滿排斥,怕去接觸,喜歡處在舒適區內;但是每次去接觸,發現結果並沒有那麼糟糕。
  • 1.使用yarn linkyarn link npmName,代碼重新build了,是可以直接刷新的,不需要其他額外的操作。
  • 2.使用的npm link,項目A引入了組件B,項目A(有配置eslint)竟然會對組件進行eslint檢測,排除辦法先用.eslintigore去除,暫時猜測是因爲把組件B當成普通文件了;如果引入的是.vue文件,A項目會用自己的解析器對這個組件進行解析,但是引用的配置文件卻是組件B裏面的。
  • 3.使用本地link組件B,在A中import 導入的時候,會出現找不到文件的情況;因爲組件B已經build了,是es5的語法,而import是es6的語法,當然行不通。node_modules裏面的包之所以可以import導入是因爲會經過webpack編譯。而直接通過軟鏈接過來的組件B,判斷成真實路徑,不會經過webpack編譯;如果需要webpack編譯成es6要設置resolve.symlinks: false,在webpack1.x未生效,vue.config.js實驗成功,rollup打包工具是都會編譯成es6的,無需額外設置。參考鏈接:記一次錯:Vue 構建項目後使用 npm link 失敗
  • 4.組件內使用的圖片咋整?使用url-loader,不要使用file-loaderurl-loader是生成base64,file-loader是生成具體的文件,或者使用圖片外鏈。
  • 5.如果因爲你起的包名與現有的包名太相近而被阻止發佈這個包,那麼找到一個獨一無二包名最簡單方法就是使用自己的作用域。你可以使用@+你的npm用戶名加在包名前面將包劃到你的npm賬戶作用域下,要改package.json裏面的name,這樣默認是私有的,需要使用npm publish —access=public來創建公有的。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章