创包

https://www.jb51.net/article/148692.htm

https://www.jianshu.com/p/7a150f566770

1:初始化vue项目

2:编写组件

3:测试组件

module.exports = {
  // 修改 src 目录 为 examples 目录
  pages: {
    index: {
      entry: 'examples/main.js',
      template: 'public/index.html',
      filename: 'index.html'
    }
  }
}

4:设置导出 index.js

import TablePage from './table-page';
import DetailPage from './detail-page';
import UploadFile from './upload-file';
import ImportTemplet from './import-templet';
import LoginName from './login-name';
import Tool from "./tool";
import * as filters from "./filters";

const components = [
    TablePage,
    DetailPage,
    UploadFile,
    ImportTemplet,
    LoginName
]


const install = function (Vue, option = {}) {
    Vue.prototype.$tool = Tool;
    Vue.prototype.$nosoption = Object.assign({
        server: ''
    }, option);

    components.forEach(component => {
        Vue.component(component.name, component);
    });

    const directive = require.context('./directive', false, /\.js$/);
    directive.keys().forEach(directiveKey => {
        Vue.directive(directiveKey.replace(/^\.\//, '').replace(/\.\w+$/, ''), directive(directiveKey).default);
    });

    Object.keys(filters).forEach(key => {
        Vue.filter(key, filters[key]);
    });
}

if (typeof window !== 'undefined' && window.Vue) {
    install(window.Vue)
}

export default {
    install,
    TablePage,
    DetailPage,
    UploadFile,
    ImportTemplet,
    LoginName,
    Tool
}

5:配置package.json


  "private": false,
  "main": "lib/nos-ui.umd.min.js",
  "scripts": {
    "serve": "vue-cli-service serve",
    "build": "vue-cli-service build",
    "lint": "vue-cli-service lint",
    "lib":"vue-cli-service build --target lib --name nos-ui --dest lib src/packages/index.js"
  },

6:发布

npm publish --registry=http://localhost:8081/repository/npm-hosted/

© 黑发海贼 all right reserved,powered by Gitbook该文件修订时间: 2020-12-30 09:48:33

results matching ""

    No results matching ""