From c391b7fb76109859a7fa62d265fb10604d5d3d73 Mon Sep 17 00:00:00 2001 From: ivo Date: Sat, 21 May 2022 14:09:04 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=8C=E6=88=90=E5=B0=BA=E5=AD=90=E5=9F=BA?= =?UTF-8?q?=E6=9C=AC=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package.json | 7 +- src/App.vue | 29 ++++- src/components/HelloWorld.vue | 58 ---------- src/components/dsw-ruler/index.vue | 171 +++++++++++++++++++++++++++++ src/components/index.js | 22 ++++ 5 files changed, 221 insertions(+), 66 deletions(-) delete mode 100644 src/components/HelloWorld.vue create mode 100644 src/components/dsw-ruler/index.vue create mode 100644 src/components/index.js diff --git a/package.json b/package.json index e559173..ff8e4b1 100644 --- a/package.json +++ b/package.json @@ -1,11 +1,14 @@ { "name": "dsw-ruler", "version": "0.1.0", - "private": true, + "main": "dist/ruler.dsw.min.js", + "private": false, + "jsx": "preserve", "scripts": { "serve": "vue-cli-service serve", "build": "vue-cli-service build", - "lint": "vue-cli-service lint" + "lint": "vue-cli-service lint", + "lib": "vue-cli-service build --target lib ./src/components/index.js" }, "dependencies": { "core-js": "^3.8.3", diff --git a/src/App.vue b/src/App.vue index 55df315..2b4c2c4 100644 --- a/src/App.vue +++ b/src/App.vue @@ -1,28 +1,45 @@ diff --git a/src/components/HelloWorld.vue b/src/components/HelloWorld.vue deleted file mode 100644 index 879051a..0000000 --- a/src/components/HelloWorld.vue +++ /dev/null @@ -1,58 +0,0 @@ - - - - - - diff --git a/src/components/dsw-ruler/index.vue b/src/components/dsw-ruler/index.vue new file mode 100644 index 0000000..a1f3777 --- /dev/null +++ b/src/components/dsw-ruler/index.vue @@ -0,0 +1,171 @@ + + + + + \ No newline at end of file diff --git a/src/components/index.js b/src/components/index.js new file mode 100644 index 0000000..363d7a6 --- /dev/null +++ b/src/components/index.js @@ -0,0 +1,22 @@ +// 整个包的入口 + +// 定义 install 方法,接受 Vue 作为参数,如果使用 use 注册插件,则所有组件都将被注册 + +import DswRuler from '../components/dsw-ruler/index.vue' + + +const components = [ + DswRuler +] + +const install = function (Vue) { + // 全局注册所有组件 + components.forEach(item => { + Vue.component(item.name, item) + }) +} +// 判断是否是以文件方式或者CDN方式,如果是,则不用调用 Vue.use()。在 CommonJS 中应始终使用 Vue.use() +if (typeof window !== 'undefined' && window.Vue) { + install(window.Vue) +} +export default install \ No newline at end of file