vue组件库的开发流程

8 篇文章 0 订阅
5 篇文章 0 订阅

欢迎点击领取 -《前端开发面试题进阶秘籍》:前端登顶之巅-最全面的前端知识点梳理总结

在这里插入图片描述

开发流程
1.创建项目,(vue-cli/公司现有架构)
2.调整项目静态目录结构
3.使用webpack相关库模式打包编译
4.使用npm或者公司源地址发布到你需要的平台
步骤
  1. 创建项目,省略;
  2. 调整项目静态目录结构

    在项目同级目录下创建lib文件夹 => assets / components / css / utils / index.js / UploadUi.vue (依据自己喜好而定)
    lib => 存放组件相关依赖
    src => main.js 我们本地调试组件入口
    src => App.vue 我们本地调试组件使用地

    ├─build
    │      build.js  // 用于执行构建
    │      webpack.base.conf.js   // 通用配置
    │      webpack.dev.conf.js   // 开发环境
    │      webpack.prod.conf.js //  用于生成library的代码 -- upload-ui.js
    │
    ├─dist
    │     upload-ui.js // library 文件
    │
    ├─lib    // example目录
    │   └─ assets // 静态文件
    │	└─ components  // 公共组件
    │	└─ css // 组件内部公共样式依赖
    │	└─ utils // 组件依赖公共方法
    │      index.js // 全量引入公共组件,并暴露出来,包含install方法可供vue引入使用该插件
    │      UploadUi.vue
    │
    ├─src
    │  │  App.vue  
    │  └─ main.js // 组件本地调试入口
    │
    ├─package.json  // 项目包依赖
    
开发
  1. 在lib文件下的UploadUi.vue文件开始开发

    <template>
    	<div class="upload-card-entry">我是upload-ui组件编写入口</div>
    </template>
    <script>
    	export default {
    		name: 'UploadUI' // 与组件注册名字必须保持一致
    	}
    </script>
    
  2. 在lib文件下的index.js文件进行注册组件或批量注册组件,暴露出去,

    // 存在组件间循环引用的场景,因此在外部统一注册
    import UploadUI from './UploadUI.vue';
    
    const install = (Vue) => {
      Vue.component(UploadUI.name, UploadUI)
    }
    
    export default {
      install,
      version: '1.0.0'
    }
    
  3. 在src下的main.js文件引入我们的组件,在src/App.vue中使用进行本地测试是否成功

    import Vue from 'vue'
    import App from './App.vue'
    import UploadUi from '../lib/index';
    
    Vue.use(UploadUi);
    
    new Vue({
      el: '#app',
      render: h => h(App)
    })
    
  4. 使用webpack相关库模式打包编译

    修改打包入口、package.json文件;涉及到打包输入输出,编译上传发布

    const webpackConfig = merge(baseWebpackConfig, {
      mode: 'production',
      module: {
        rules: cssLoader.styleLoaders({
          sourceMap: config.cssSourceMap
        })
      },
      devtool: false,
      
      entry: path.resolve(__dirname, '../lib/index.js'), // 打包入口文件地址
    
      output: {
        path: path.resolve(__dirname, '../dist'),
        filename: 'upload-ui.js',
        library: 'upload-ui', //模块名称
        libraryTarget: 'umd', //输出格式
        umdNamedDefine: true //是否把模块名作为AMD输出的命名空间
      },
    
      externals: { // Vue组件库只提供组件,Vue文件自身需要组件库使用者在项目中自行引入,库中无需打包。所以我们可以把Vue加到externals中。
        vue: 'vue'
      },
    
      plugins: [
        // 设置默认环境变量
        new webpack.DefinePlugin({
          'process.env': env_build
        }),
      ]
    })
    

    package.json 文件配置,只显示了部分重要的

    {
      "name": "vue-upload-ui",
      "version": "1.1.5", // 注意每次发布npm,版本号不能重复
      "description": "上传upload-ui层组件",
      "author": "",
      "private": false, // 是否私有,必须指定为false才能发布到npm
      "main": "./dist/upload-ui.js", // 编译后包的入口文件
      "scripts": {
        "dev": "webpack-dev-server --open 'Google Chrome' --inline --progress --config build/webpack.dev.conf.js",
        "build": "node build/build.js build"
      },
      "dependencies": { // 业务依赖
      },
      "files": [ // 发布需上传的文件
        "lib",
        "dist"
      ],
      "devDependencies": { // 开发依赖
      },
    }
    
  5. 发布到npm上

    # 设置要发布的源,我发布的是公司搭建的私库
    npm config set registry http://registry.npmjs.org
    # 登录
    npm login
    # 发布
    npm publish
    
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Vue组件开发过程培训是为了帮助开发人员学习和掌握使用Vue框架开发可复用的组件的技能。以下是关于Vue组件开发过程培训的一些要点: 1. Vue组件基础:首先需要了解Vue组件的基本概念和特性,包括组件的创建、注册和使用方法,以及组件之间的通信方式等。 2. 单文件组件:学习使用Vue的单文件组件格式来组织和管理组件的代码,包括将模板、样式和逻辑封装在一个.vue文件中,并通过组件导入和导出来实现组件的复用。 3. 组件通信:掌握Vue组件之间的通信方式,包括父子组件之间的props和$emit、子父组件之间的$refs和$parent/$children、非直接关系组件的事件总线等。 4. 组件设计原则:了解如何设计具有高内聚、低耦合、可复用性强的组件,包括正确的props和data的设计、合理的组件划分和组织结构等。 5. 组件生命周期:学习掌握Vue组件的生命周期钩子函数,了解每个生命周期阶段的作用和使用方式,以及在开发过程中常见的生命周期场景和应用。 6. 组件使用:介绍常见的Vue组件,如Element UI、Ant Design Vue等,学习如何使用这些组件来加速开发过程,提高开发效率。 7. 自定义指令和过滤器:了解Vue中自定义指令和过滤器的概念和用法,学习如何根据实际需求创建自定义指令和过滤器来实现特定的功能。 在培训过程中,可以结合实际案例和练习来进行实际操作和巩固学习,在实践中逐渐掌握和应用Vue组件开发的技巧和方法。通过这些培训内容和实践训练,开发人员可以更好地理解和运用Vue组件开发,提高开发效率和代码质量。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

SunnyRun!

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值