zoukankan      html  css  js  c++  java
  • VUE-CLI3.0组件封装打包使用

      1. 需求

        项目中要求对外提供vue的公共组件,但是不能提供源码,于是就需要用通过对单个组件打包后对外提供。发布到npm上供项目下载使用。

      2. 新建项目 

        Vue-cli3创建一个项目:vue create vue-project

      3. 封装组件

        在views中新建一个组件的文件夹(你可以自己定义自己的组件位置),新建组件Manager.vue和对应的一个index.js文件,如下图

        

        index.js的内容如下:

     1 import Manager from './Manager.vue'
     2  
     3 if (typeof window !== 'undefined' && window.Vue) {
     4     window.Vue.component('Manager', Manager)
     5 }
     6 //为组件添加 install 方法
     7 Manager.install = function(Vue){
     8     Vue.component(Manager.name, Manager)
     9 }
    10 export default Manager

      4.  在package.json添加打包组件命令配置

       

        执行打包命令:npm run build-component

                 完成后在项目根目录会生成dist文件夹,里面就是打包生成的组件的压缩文件,还有一个demo.html示例文件。

        

        提示:package.json中的name一般是根据项目名称命名的,但是在打包的时候你可以改成你想要的组件的名称,比如我会改成:manager-component。

       5. 测试打包完成的组件

       在package.json添加配置

        执行命令:npm pack

         在项目中会生成一个manager-component-0.1.0.tgz的压缩文件。

      6. 在其他项目中引用

       1)将压缩包放到某个文件夹下,执行命令: npm install   压缩包的绝对路径manager-component-0.1.0.tgz

          在main.js中import Manager from ‘manager-component’     

          全局注册组件Vue.component(‘manager-component’, Manager)

      7. 发布到npm  

        1)注册一个npm账号,执行命令:npm login登录,执行命令npm publish发布

         2)在main.js中import Manager from ‘manager-component’     ,

          全局注册组件Vue.component(‘manager-component’, Manager)。 

        注意:全局注册组件的时候用Vue.use(Manager)可能不成功,我的没有成功,于是用Vue.component(‘manager-component’, Manager)注册一下组件就能用了。

  • 相关阅读:
    编程题2
    编程题1
    用Fiddler对Android应用进行抓包
    Solr7部署报错:java.lang.NoSuchMethodError: javax.servlet.ServletInputStream.isFinished()Z
    docker 网桥 bridge
    dockerfile 文件创建镜像说明、各参数
    多实例应用
    配置管理-kubernates的配置管理使用方式 、 config-map/ secret
    存储管理、有状态应用的特征
    特殊类型statfulset 和 headless service
  • 原文地址:https://www.cnblogs.com/webgis-ling/p/14452792.html
Copyright © 2011-2022 走看看