创建工程目录
-
使用
vue create project-name
命令行创建工程,选择框架版本
-
还可以使用
vue ui
,以图形化界面完成创建工作
使用脚手架创建的工程也可以通过
vue ui
进入仪表盘页面
编写组件代码并创建目录
-
npm install
安装所有依赖,否则运行时会报错
-
按如下结构创建目录
-
demo.vue, demo/src是mode组件的代码即vue文件
<template> <div> <p>测试</p> <el-button>el-button</el-button> </div> </template> <script> export default { name: 'Demo' } </script>
-
demo/index.js demo/index.js是对demo组件进行单一注册的js文件,便于按需引入使用
import Demo from './src/demo' Demo.install = function(Vue) { Vue.component(Demo.name, Demo); } export default Demo
-
packages/index.js ,packages/index.js是对所有组件进行统一注册的js文件,使用时可以进行全部引入。
import Demo from "./demo"; // 新增组件时也需要在数组中添加注册 const components = [ Demo ]; const install = function(Vue) { components.forEach(component => { Vue.component(component.name, component); }); } if (typeof window !== 'undefined' && window.Vue) { install(window.Vue); } export default { install, Demo }
修改配置文件
{
"name": "test-component", // 项目名
"version": "0.1.0", // 版本号,每次上传都要更新
"private": false, // 是否私有,默认为true,改成false
"scripts": {
// 增加lib命令,最后为打包的入口文件路径
"lib": "vue-cli-service build --target lib --dest lib ./packages/index.js"
},
"main": "lib/test-component.js", // 打包后的入口文件,若不配置,则在其他项目中就无法使用import xx from '包名'来引入组件,只能以包名作为起点来指定相对路径
"files": [
"dist"
] // 列入打包的文件和目录,如果不写会把整个工程目录打包
}
发布到npm
- 在npm官网注册,设置用户名,密码,邮箱
-
使用
npm login
进行登陆
需要特别注意,输入密码时看起来光标没有移动,也没有显示字符,其实是加密隐藏了,正常输入后回车即可
-
切换npm镜像源
npm config set registry https://registry.npmjs.org
,查看是否切换成功可以使用
npm config get registry
或者在系统的用户目录下查看
npmrc
文件
-
使用
npm publish
发布 -
切换回淘宝源,方便其他地方使用
npm config set registry https://registry.npm.taobao.org
版权声明:本文为qq_41790461原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。