首先问题:开发中我们往往需要做某些功能,这个功能可能会出现很多次,也会出现在不同的项目。需要使用时候又不想重新写,怎么办呢?
解决思路:把这个特殊的需求功能做成属于自己的组件,当下次需要去使用它的时候。那么我们就可以打包这个组件并上传到npm管理库,这个库可以是自己的私有库,也可以是npmjs公共库。如何创建自己的私有npm服务器,详见上一篇文章。
一、初始化一个空项目
1、新建一个文件夹,然后进入到该文件夹目录下,执行
npm init
初始化项目。然后会让你填一些项目相关的信息,跟着提示填就是了。没啥说的。注意name不要和现有的其他npm包重名了,不然一会儿发Npm包的时候会失败,可以先去npmjs.com搜一下有没有重名的。
这一步完成后,目录下会生成package.json文件。
2、由于本教程是发布一个vue的组件包,而且使用了es6和webpack,所以在devDependencies字段中,应该至少加入对应的依赖,可以参考我这个配置
name 为npm包的名称,一定不能跟别人的重复,可以自己去npmjs.com 上面检查下是否重复,否则提交不成功的
main 自己定义的程序的入口文件,比如我希望打包后是 dist/helloWorld.js
private 要设置为 false
{
"name": "hello-world",
"description": "",
"version": "1.0.0",
"author": "十三月",
"license": "MIT",
"private": false,
"main": "dist/helloWorld.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"start": "webpack-dev-server --hot --inline",
"build": "webpack --display-error-details --config webpack.config.js"<