在package.json中,我有:
"vue-search-select": "github:my-github-account/vue-search-select"
然后運行npm install,沒有錯誤。
在app.js中,我嘗試匯入分叉包:
import { ModelSelect } from 'vue-search-select';
當我運行時npm run watch,收到以下訊息:
Module not found: Error: Can't resolve 'vue-search-select'
更新:
我比較了原始版本和分叉版本node_modules:原始包含dist檔案夾但分叉版本沒有。在github中,原來的也沒有這個檔案夾。并且dist包含在.gitignore.
uj5u.com熱心網友回復:
據我了解,對于package.jsonGitHub URL,從 1.1.65 版本開始,您可以直接參考 GitHub URL foo:user/foo-project,如此處所示。
但我仍然會推薦一個更完整的 URL:
git ssh://user@hostname:project.git#commit-ish
git ssh://user@hostname/project.git#commit-ish
git http://user@hostname/project/blah.git#commit-ish
git https://user@hostname/project/blah.git#commit-ish
這樣,您可以控制方案(HTTPS 或 SSH)并檢查使用了哪些憑據(HTTPS 的快取用戶名/密碼或 SSH 的私鑰)。
OP Wilson在討論中評論說,添加dist/到 repo 可能是一種選擇,就像在這里一樣。
可以在 package.json 中宣告一個prepare腳本,例如這個。
"scripts": {
"build": "tsc",
"prepare": "npm run build"
},
如威爾遜的回答所述
重要的是
prepare腳本是在分叉包中添加的,而不是在使用包的專案中。
uj5u.com熱心網友回復:
最后,我找到了解決方案:
將"prepare": "npm run lib:build"(或其他取決于包如何構建,可以簽入package.json)添加scripts到package.json分叉包中。并推送到github。
然后,在使用分叉包的專案中,只需保留"package-name": "github:my-github-account/package-name"并package.json再次運行npm install。沒有其他變化。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/446809.html
