- 作者:老汪软件技巧
- 发表时间:2024-11-27 17:05
- 浏览量:
Reference
How To Create And Publish Your First NPM Package
Initialization
先创建一个叫is-the-string-devin 的 GitHub repo,GitHub会列出一些命令帮助你在本地初始化该repo,上面创建的repo会给出下面的命令:
// is-the-string-devin
echo "# is-the-string-devin" >> README.md
git init
git add README.md
git commit -m "first commit"
git branch -M main
git remote add origin git@github.com:DevinJohw/is-string-devin.git
git push -u origin main
在本地创建一个is-the-string-devin 的文件夹,然后运行上面的初始化commands,这时候,刷新刚刚的github repo,就会看到变化了。
下一步,创建package.json
npm init
原视频中使用npm版本是9以前的,可以自动推断github repo,我使用的是10,不能自动推断了,我不知道这是个bug还是有意为之,于是提了一个issue:
/npm/cli/iss…
Testing the package locally
# 在待发布的package下
$ npm link
$ sudo npm link # 在macOS需要root权限
# 在测试文件夹下
$ npm link
Creating package with scope
在包名前添加@ ,或者在init package.json 的时候添加flag —scope=
Publishing the package
# first step
$ npm login
# second step
$ npm publish
# 值得注意的是,当包含有scrope,默认是private的,必须添加flag --access=public
$ npm publish --access=public
新创建的package不能立即被search到的问题
创建完package不一定立即能通过npm官网中的搜索框搜到,可以通过下面的命令确认package是否发布成功:
npm view @devinjohw/is-the-string-devin
# 或者,两者完全相同
npm show @devinjohw/is-the-string-devin
这个解决方案来自stackoverflw + chatGPT:
/questions/5…