vue2从0开始打包发布npm包,踩坑无数,完整版

在Vue 2中从0开始打包并发布一个NPM包需要以下步骤:

  1. 创建项目结构和基础代码。
  2. 编写package.json配置文件。
  3. 编写组件代码。
  4. 编写README.mdLICENSE文件。
  5. 确保代码质量和测试。
  6. 发布到NPM。

以下是一个简化的示例:




my-vue-component/
│
├── src/
│   └── MyComponent.vue
│
├── package.json
├── README.md
└── LICENSE

src/MyComponent.vue:




<template>
  <div class="my-component">Hello, Vue Component!</div>
</template>
 
<script>
export default {
  name: 'MyComponent',
  // 组件的其他选项...
}
</script>
 
<style scoped>
.my-component {
  /* 样式 */
}
</style>

package.json:




{
  "name": "my-vue-component",
  "version": "1.0.0",
  "description": "A simple Vue 2 component",
  "main": "dist/my-vue-component.common.js",
  "scripts": {
    "build": "vue-cli-service build --target lib --name my-vue-component src/MyComponent.vue"
  },
  "keywords": ["vue", "component"],
  "author": "Your Name",
  "license": "MIT",
  "private": false,
  "files": [
    "dist",
    "src"
  ],
  "peerDependencies": {
    "vue": "^2.0.0"
  }
}

README.md:




# My Vue Component
 
A simple Vue 2 component for doing xyz.
 
## Installation
 
```bash
npm install my-vue-component

Usage




<template>
  <my-component></my-component>
</template>
 
<script>
import MyComponent from 'my-vue-component';
 
export default {
  components: {
    MyComponent
  }
}
</script>



 
`LICENSE`:
 

MIT License

Copyright (c) [year] [your name]

Permission is hereby granted, free of charge, to any person obtaining a copy

of this software and associated documentation files (the "Software"), to deal

in the Software without restriction, including without limitation the rights

to use, copy, modify, merge, publish, distribute, sublicense, and/or sell

copies of the Software, and to permit persons to whom the Software is

furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all

copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR

IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,

FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO

VUE , npm
最后修改于:2024年08月14日 08:40

评论已关闭

推荐阅读

Vue中使用mind-map实现在线思维导图
2024年08月04日
VUE
Web前端最全Vue实现免密登录跳转的方式_vue怎么样不登录返回首页,最强技术实现
2024年08月04日
VUE
vue3 项目搭建教程(基于create-vue,vite,Vite + Vue)
2024年08月04日
VUE
Vue-颜色选择器实现方案——>Vue-Color( 实战*1+ Demo*7)
2024年08月04日
VUE
Vue项目卡顿慢加载?这些优化技巧告诉你!_vue数据多渲染卡顿
2024年08月04日
VUE
vue中的keep-alive详解与应用场景
2024年08月04日
VUE
Vue、React实现excel导出功能(三种实现方式保姆级讲解)
2024年08月04日
vue-office/docx插件实现docx文件预览
2024年08月04日
VUE
java调用js文件的两种方法(支持V8引擎)
2024年08月04日
JavaScript:解决计算精度问题/mathjs/bignumber.js/big.js/decimal.js
2024年08月04日
两周从爬虫小白变大神 _yjs_js_security_passport
2024年08月04日
JS笔记(对象、函数、数组)
2024年08月04日
Markdown.js:强大的纯JavaScript Markdown解析器
2024年08月04日
Vue项目:js模拟点击a标签下载文件并重命名,URL文件地址下载方法、请求接口下载文件方法总结。
2024年08月04日
vue 父组件怎么获取子组件里面的data数据
2024年08月04日
VUE
个人开发实现AI套壳网站快速搭建(Vue+elementUI+SpringBoot)
2024年08月04日
el-table 表格封装并改造实现单元格可编辑
2024年08月04日
none
nodejs环境下创建vue项目、SSH密钥登陆!!!
2024年08月04日
vue+quill+element-ui实现视频、图片上传及缩放保姆级教程,轻松使用富文本
2024年08月04日
【three.js】22. Imported Models导入模型
2024年08月04日