sccba-ui 0.0.3 → 0.0.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -17,11 +17,9 @@ npm install sccba-ui
17
17
 
18
18
  ## 使用
19
19
 
20
- ### 完整引入(推荐)
20
+ ### Vue 3
21
21
 
22
- 类似 Element UI,可以一次性引入所有组件:
23
-
24
- #### Vue 3
22
+ #### 完整引入(推荐)
25
23
 
26
24
  ```javascript
27
25
  import { createApp } from 'vue'
@@ -34,47 +32,59 @@ app.use(SccbaUI)
34
32
  app.mount('#app')
35
33
  ```
36
34
 
37
- #### Vue 2
35
+ #### 按需引入
38
36
 
39
37
  ```javascript
40
- import Vue from 'vue'
41
- import SccbaUI from 'sccba-ui'
38
+ import { createApp } from 'vue'
39
+ import { SccbaButton, SccbaInput } from 'sccba-ui'
42
40
  import 'sccba-ui/dist/sccba-ui.css'
43
41
  import App from './App.vue'
44
42
 
45
- Vue.use(SccbaUI)
46
-
47
- new Vue({
48
- render: h => h(App)
49
- }).$mount('#app')
43
+ const app = createApp(App)
44
+ app.use(SccbaButton)
45
+ app.use(SccbaInput)
46
+ app.mount('#app')
50
47
  ```
51
48
 
52
- ### 按需引入
49
+ ### Vue 2
53
50
 
54
- 如果只需要部分组件,可以按需引入:
51
+ #### 完整引入(推荐)
55
52
 
56
- #### Vue 3
53
+ **重要**:Vue 2项目必须使用CommonJS方式引入
57
54
 
58
55
  ```javascript
59
- import { createApp } from 'vue'
60
- import { SccbaButton, SccbaInput } from 'sccba-ui'
56
+ import Vue from 'vue'
57
+ import ElementUI from 'element-ui'
58
+ import 'element-ui/lib/theme-chalk/index.css'
59
+
60
+ // 使用 CommonJS 方式引入 sccba-ui
61
+ const SccbaUI = require('sccba-ui')
61
62
  import 'sccba-ui/dist/sccba-ui.css'
62
63
  import App from './App.vue'
63
64
 
64
- const app = createApp(App)
65
- app.use(SccbaButton)
66
- app.use(SccbaInput)
67
- app.mount('#app')
65
+ Vue.use(ElementUI)
66
+ Vue.use(SccbaUI)
67
+
68
+ new Vue({
69
+ render: h => h(App)
70
+ }).$mount('#app')
68
71
  ```
69
72
 
70
- #### Vue 2
73
+ #### 按需引入
74
+
75
+ **重要**:Vue 2项目必须使用CommonJS方式引入
71
76
 
72
77
  ```javascript
73
78
  import Vue from 'vue'
74
- import { SccbaButton, SccbaInput } from 'sccba-ui'
79
+ import ElementUI from 'element-ui'
80
+ import 'element-ui/lib/theme-chalk/index.css'
81
+
82
+ // 使用 CommonJS 方式按需引入组件
83
+ const { SccbaButton, SccbaInput } = require('sccba-ui')
75
84
  import 'sccba-ui/dist/sccba-ui.css'
76
85
  import App from './App.vue'
77
86
 
87
+ Vue.use(ElementUI)
78
88
  Vue.use(SccbaButton)
79
89
  Vue.use(SccbaInput)
80
90
 
@@ -1 +1 @@
1
- "use strict";var S=Object.create;var v=Object.defineProperty;var h=Object.getOwnPropertyDescriptor;var _=Object.getOwnPropertyNames;var w=Object.getPrototypeOf,I=Object.prototype.hasOwnProperty;var C=(e,n,l,s)=>{if(n&&typeof n=="object"||typeof n=="function")for(let a of _(n))!I.call(e,a)&&a!==l&&v(e,a,{get:()=>n[a],enumerable:!(s=h(n,a))||s.enumerable});return e};var f=(e,n,l)=>(l=e!=null?S(w(e)):{},C(n||!e||!e.__esModule?v(l,"default",{value:e,enumerable:!0}):l,e));Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const t=require("vue-demi"),o=require("vue"),d=(e,n)=>{const l=e.__vccOpts||e;for(const[s,a]of n)l[s]=a;return l},k={name:"SccbaButton",inheritAttrs:!1},$=Object.assign(k,{props:{type:{type:String,default:"default"},size:{type:String,default:""},plain:{type:Boolean,default:!1},round:{type:Boolean,default:!1},circle:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},icon:{type:String,default:""},label:{type:String,default:""},width:{type:[String,Number],default:""},height:{type:[String,Number],default:""},block:{type:Boolean,default:!1},nativeType:{type:String,default:"button"},placeholder:{type:String,default:""}},setup(e){const n=e,l=t.useAttrs(),s=t.shallowRef(null),a=t.ref(null),c=t.computed(()=>({...n,...l}));return t.onMounted(async()=>{if(t.isVue2){const u=await import("element-ui");s.value=u.Button}else{const u=await import("element-plus");s.value=u.ElButton}}),(u,i)=>o.unref(s)?(o.openBlock(),o.createBlock(o.resolveDynamicComponent(o.unref(t.h)(o.unref(s),{...o.unref(c),ref:o.unref(a)},u.$slots)),{key:0})):o.createCommentVNode("",!0)}}),m=d($,[["__scopeId","data-v-de371e67"]]),P=t.defineComponent({name:"MyButton",inheritAttrs:!1,props:{type:{type:String,default:"default"},size:{type:String,default:"medium"},plain:{type:Boolean,default:!1},round:{type:Boolean,default:!1},circle:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},icon:{type:String,default:""},label:{type:String,default:""},width:{type:[String,Number],default:""},height:{type:[String,Number],default:""},block:{type:Boolean,default:!1},nativeType:{type:String,default:"button"},placeholder:{type:String,default:""}},setup(e,{attrs:n}){const l=t.shallowRef(null),s=t.computed(()=>({...e,...n})),a=t.getCurrentInstance(),c=u=>{console.log(u,"elllll"),u&&(a.exposed=u)};return t.onMounted(async()=>{if(t.isVue2){const u=await import("element-ui");l.value=u.Button}else{const u=await import("element-plus");l.value=u.ElButton}console.log(l.value,"buttonComponent.value"),console.log(a,"vmmmmm")}),{buttonComponent:l,allProps:s,h:t.h,changeRef:c}}});function M(e,n,l,s,a,c){return o.openBlock(),o.createBlock(o.resolveDynamicComponent(e.h(e.buttonComponent,{...e.allProps,ref:e.changeRef},e.$slots)))}const y=d(P,[["render",M],["__scopeId","data-v-1cb31901"]]),N={name:"SccbaInput"},R=Object.assign(N,{props:{type:{type:String,default:"text"},size:{type:String,default:""},placeholder:{type:String,default:""},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},clearable:{type:Boolean,default:!1},showPassword:{type:Boolean,default:!1},maxlength:{type:[String,Number],default:null},showWordLimit:{type:Boolean,default:!1},autocomplete:{type:String,default:"off"},name:{type:String,default:""},form:{type:String,default:""},required:{type:Boolean,default:!1},width:{type:[String,Number],default:""}},emits:["input","change","focus","blur","clear"],setup(e,{expose:n,emit:l}){const s=e,a=t.useAttrs(),c=t.shallowRef(null),u=t.computed(()=>({...s,...a}));t.onMounted(async()=>{if(t.isVue2){const p=await import("element-ui");c.value=p.Input}else{const p=await import("element-plus");c.value=p.ElInput}});const i=t.getCurrentInstance(),r=t.ref(null),B=p=>{r.value=p,t.isVue2&&i&&(i.exposed=p)};return n({getInputInstance:()=>r.value,focus:()=>r.value&&r.value.focus(),blur:()=>r.value&&r.value.blur(),select:()=>r.value&&r.value.select(),clear:()=>r.value&&r.value.clear(),inputRef:r}),(p,D)=>o.unref(c)?(o.openBlock(),o.createBlock(o.resolveDynamicComponent(o.unref(t.h)(o.unref(c),{...o.unref(u),ref:B},p.$slots)),{key:0})):o.createCommentVNode("",!0)}}),g=d(R,[["__scopeId","data-v-e40ba256"]]),V=[m,y,g],b=function(e){V.forEach(n=>{e.component(n.name,n)})};typeof window<"u"&&window.Vue&&b(window.Vue);const A={install:b,SccbaButton:m,MyButton1:y,SccbaInput:g};exports.MyButton1=y;exports.SccbaButton=m;exports.SccbaInput=g;exports.default=A;exports.install=b;
1
+ "use strict";var S=Object.create;var v=Object.defineProperty;var _=Object.getOwnPropertyDescriptor;var w=Object.getOwnPropertyNames;var I=Object.getPrototypeOf,C=Object.prototype.hasOwnProperty;var k=(e,n,l,s)=>{if(n&&typeof n=="object"||typeof n=="function")for(let a of w(n))!C.call(e,a)&&a!==l&&v(e,a,{get:()=>n[a],enumerable:!(s=_(n,a))||s.enumerable});return e};var p=(e,n,l)=>(l=e!=null?S(I(e)):{},k(n||!e||!e.__esModule?v(l,"default",{value:e,enumerable:!0}):l,e));Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const t=require("vue-demi"),o=require("vue"),d=(e,n)=>{const l=e.__vccOpts||e;for(const[s,a]of n)l[s]=a;return l},$={name:"SccbaButton",inheritAttrs:!1},P=Object.assign($,{props:{type:{type:String,default:"default"},size:{type:String,default:""},plain:{type:Boolean,default:!1},round:{type:Boolean,default:!1},circle:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},icon:{type:String,default:""},label:{type:String,default:""},width:{type:[String,Number],default:""},height:{type:[String,Number],default:""},block:{type:Boolean,default:!1},nativeType:{type:String,default:"button"},placeholder:{type:String,default:""}},setup(e){const n=e,l=t.useAttrs(),s=t.shallowRef(null),a=t.ref(null),c=t.computed(()=>({...n,...l}));return t.onMounted(async()=>{if(t.isVue2){const u=await import("element-ui");s.value=u.Button}else{const u=await import("element-plus");s.value=u.ElButton}}),(u,i)=>o.unref(s)?(o.openBlock(),o.createBlock(o.resolveDynamicComponent(o.unref(t.h)(o.unref(s),{...o.unref(c),ref:o.unref(a)},u.$slots)),{key:0})):o.createCommentVNode("",!0)}}),m=d(P,[["__scopeId","data-v-de371e67"]]),M=t.defineComponent({name:"MyButton",inheritAttrs:!1,props:{type:{type:String,default:"default"},size:{type:String,default:"medium"},plain:{type:Boolean,default:!1},round:{type:Boolean,default:!1},circle:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},icon:{type:String,default:""},label:{type:String,default:""},width:{type:[String,Number],default:""},height:{type:[String,Number],default:""},block:{type:Boolean,default:!1},nativeType:{type:String,default:"button"},placeholder:{type:String,default:""}},setup(e,{attrs:n}){const l=t.shallowRef(null),s=t.computed(()=>({...e,...n})),a=t.getCurrentInstance(),c=u=>{console.log(u,"elllll"),u&&(a.exposed=u)};return t.onMounted(async()=>{if(t.isVue2){const u=await import("element-ui");l.value=u.Button}else{const u=await import("element-plus");l.value=u.ElButton}console.log(l.value,"buttonComponent.value"),console.log(a,"vmmmmm")}),{buttonComponent:l,allProps:s,h:t.h,changeRef:c}}});function N(e,n,l,s,a,c){return o.openBlock(),o.createBlock(o.resolveDynamicComponent(e.h(e.buttonComponent,{...e.allProps,ref:e.changeRef},e.$slots)))}const y=d(M,[["render",N],["__scopeId","data-v-1cb31901"]]),R={name:"SccbaInput"},V=Object.assign(R,{props:{type:{type:String,default:"text"},size:{type:String,default:""},placeholder:{type:String,default:""},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},clearable:{type:Boolean,default:!1},showPassword:{type:Boolean,default:!1},maxlength:{type:[String,Number],default:null},showWordLimit:{type:Boolean,default:!1},autocomplete:{type:String,default:"off"},name:{type:String,default:""},form:{type:String,default:""},required:{type:Boolean,default:!1},width:{type:[String,Number],default:""}},emits:["input","change","focus","blur","clear"],setup(e,{expose:n,emit:l}){const s=e,a=t.useAttrs(),c=t.shallowRef(null),u=t.computed(()=>({...s,...a}));t.onMounted(async()=>{if(t.isVue2){const f=await import("element-ui");c.value=f.Input}else{const f=await import("element-plus");c.value=f.ElInput}});const i=t.getCurrentInstance(),r=t.ref(null),h=f=>{r.value=f,t.isVue2&&i&&(i.exposed=f)};return n({getInputInstance:()=>r.value,focus:()=>r.value&&r.value.focus(),blur:()=>r.value&&r.value.blur(),select:()=>r.value&&r.value.select(),clear:()=>r.value&&r.value.clear(),inputRef:r}),(f,A)=>o.unref(c)?(o.openBlock(),o.createBlock(o.resolveDynamicComponent(o.unref(t.h)(o.unref(c),{...o.unref(u),ref:h},f.$slots)),{key:0})):o.createCommentVNode("",!0)}}),g=d(V,[["__scopeId","data-v-e40ba256"]]),B=[m,y,g],b=function(e){B.forEach(n=>{e.component(n.name,n)})};B.forEach(e=>{e.install=function(n){n.component(e.name,e)}});typeof window<"u"&&window.Vue&&b(window.Vue);const E={install:b,SccbaButton:m,MyButton1:y,SccbaInput:g};exports.MyButton1=y;exports.SccbaButton=m;exports.SccbaInput=g;exports.default=E;exports.install=b;
@@ -1,14 +1,14 @@
1
- import { useAttrs as S, shallowRef as i, ref as _, computed as d, onMounted as m, isVue2 as f, h as y, defineComponent as N, getCurrentInstance as h } from "vue-demi";
1
+ import { useAttrs as S, shallowRef as i, ref as h, computed as d, onMounted as m, isVue2 as f, h as y, defineComponent as R, getCurrentInstance as _ } from "vue-demi";
2
2
  import { createBlock as g, createCommentVNode as w, unref as r, openBlock as b, resolveDynamicComponent as v } from "vue";
3
3
  const B = (e, n) => {
4
4
  const l = e.__vccOpts || e;
5
5
  for (const [a, u] of n)
6
6
  l[a] = u;
7
7
  return l;
8
- }, R = {
8
+ }, E = {
9
9
  name: "SccbaButton",
10
10
  inheritAttrs: !1
11
- }, x = /* @__PURE__ */ Object.assign(R, {
11
+ }, x = /* @__PURE__ */ Object.assign(E, {
12
12
  props: {
13
13
  // 类型:primary/success/warning/danger/info/text
14
14
  type: {
@@ -82,7 +82,7 @@ const B = (e, n) => {
82
82
  }
83
83
  },
84
84
  setup(e) {
85
- const n = e, l = S(), a = i(null), u = _(null), s = d(() => ({ ...n, ...l }));
85
+ const n = e, l = S(), a = i(null), u = h(null), s = d(() => ({ ...n, ...l }));
86
86
  return m(async () => {
87
87
  if (f) {
88
88
  const t = await import("element-ui");
@@ -93,7 +93,7 @@ const B = (e, n) => {
93
93
  }
94
94
  }), (t, c) => r(a) ? (b(), g(v(r(y)(r(a), { ...r(s), ref: r(u) }, t.$slots)), { key: 0 })) : w("", !0);
95
95
  }
96
- }), I = /* @__PURE__ */ B(x, [["__scopeId", "data-v-de371e67"]]), E = N({
96
+ }), I = /* @__PURE__ */ B(x, [["__scopeId", "data-v-de371e67"]]), V = R({
97
97
  name: "MyButton",
98
98
  // 关闭自动继承attrs,因为我们要手动绑定到component
99
99
  inheritAttrs: !1,
@@ -171,7 +171,7 @@ const B = (e, n) => {
171
171
  }
172
172
  },
173
173
  setup(e, { attrs: n }) {
174
- const l = i(null), a = d(() => ({ ...e, ...n })), u = h(), s = (t) => {
174
+ const l = i(null), a = d(() => ({ ...e, ...n })), u = _(), s = (t) => {
175
175
  console.log(t, "elllll"), t && (u.exposed = t);
176
176
  };
177
177
  return m(async () => {
@@ -191,12 +191,12 @@ const B = (e, n) => {
191
191
  };
192
192
  }
193
193
  });
194
- function V(e, n, l, a, u, s) {
194
+ function z(e, n, l, a, u, s) {
195
195
  return b(), g(v(e.h(e.buttonComponent, { ...e.allProps, ref: e.changeRef }, e.$slots)));
196
196
  }
197
- const $ = /* @__PURE__ */ B(E, [["render", V], ["__scopeId", "data-v-1cb31901"]]), z = {
197
+ const $ = /* @__PURE__ */ B(V, [["render", z], ["__scopeId", "data-v-1cb31901"]]), A = {
198
198
  name: "SccbaInput"
199
- }, A = /* @__PURE__ */ Object.assign(z, {
199
+ }, M = /* @__PURE__ */ Object.assign(A, {
200
200
  props: {
201
201
  // 类型:text/password/textarea/number/email/url/date
202
202
  type: {
@@ -281,7 +281,7 @@ const $ = /* @__PURE__ */ B(E, [["render", V], ["__scopeId", "data-v-1cb31901"]]
281
281
  s.value = p.ElInput;
282
282
  }
283
283
  });
284
- const c = h(), o = _(null), k = (p) => {
284
+ const c = _(), o = h(null), N = (p) => {
285
285
  o.value = p, f && c && (c.exposed = p);
286
286
  };
287
287
  return n({
@@ -296,20 +296,25 @@ const $ = /* @__PURE__ */ B(E, [["render", V], ["__scopeId", "data-v-1cb31901"]]
296
296
  clear: () => o.value && o.value.clear(),
297
297
  // 直接暴露实例(在某些情况下可能更方便)
298
298
  inputRef: o
299
- }), (p, O) => r(s) ? (b(), g(v(r(y)(r(s), { ...r(t), ref: k }, p.$slots)), { key: 0 })) : w("", !0);
299
+ }), (p, O) => r(s) ? (b(), g(v(r(y)(r(s), { ...r(t), ref: N }, p.$slots)), { key: 0 })) : w("", !0);
300
300
  }
301
- }), C = /* @__PURE__ */ B(A, [["__scopeId", "data-v-e40ba256"]]), M = [
301
+ }), C = /* @__PURE__ */ B(M, [["__scopeId", "data-v-e40ba256"]]), P = [
302
302
  I,
303
303
  $,
304
304
  C
305
- ], P = function(e) {
306
- M.forEach((n) => {
305
+ ], k = function(e) {
306
+ P.forEach((n) => {
307
307
  e.component(n.name, n);
308
308
  });
309
309
  };
310
- typeof window < "u" && window.Vue && P(window.Vue);
310
+ P.forEach((e) => {
311
+ e.install = function(n) {
312
+ n.component(e.name, e);
313
+ };
314
+ });
315
+ typeof window < "u" && window.Vue && k(window.Vue);
311
316
  const T = {
312
- install: P,
317
+ install: k,
313
318
  SccbaButton: I,
314
319
  MyButton1: $,
315
320
  SccbaInput: C
@@ -319,5 +324,5 @@ export {
319
324
  I as SccbaButton,
320
325
  C as SccbaInput,
321
326
  T as default,
322
- P as install
327
+ k as install
323
328
  };
@@ -1 +1 @@
1
- (function(l,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue-demi"),require("vue")):typeof define=="function"&&define.amd?define(["exports","vue-demi","vue"],e):(l=typeof globalThis<"u"?globalThis:l||self,e(l.SccbaUI={},l.VueDemi,l.Vue))})(this,(function(l,e,t){"use strict";const d=(n,a)=>{const s=n.__vccOpts||n;for(const[u,f]of a)s[u]=f;return s},i=d(Object.assign({name:"SccbaButton",inheritAttrs:!1},{props:{type:{type:String,default:"default"},size:{type:String,default:""},plain:{type:Boolean,default:!1},round:{type:Boolean,default:!1},circle:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},icon:{type:String,default:""},label:{type:String,default:""},width:{type:[String,Number],default:""},height:{type:[String,Number],default:""},block:{type:Boolean,default:!1},nativeType:{type:String,default:"button"},placeholder:{type:String,default:""}},setup(n){const a=n,s=e.useAttrs(),u=e.shallowRef(null),f=e.ref(null),c=e.computed(()=>({...a,...s}));return e.onMounted(async()=>{if(e.isVue2){const o=await import("element-ui");u.value=o.Button}else{const o=await import("element-plus");u.value=o.ElButton}}),(o,_)=>t.unref(u)?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(e.h)(t.unref(u),{...t.unref(c),ref:t.unref(f)},o.$slots)),{key:0})):t.createCommentVNode("",!0)}}),[["__scopeId","data-v-de371e67"]]),b=e.defineComponent({name:"MyButton",inheritAttrs:!1,props:{type:{type:String,default:"default"},size:{type:String,default:"medium"},plain:{type:Boolean,default:!1},round:{type:Boolean,default:!1},circle:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},icon:{type:String,default:""},label:{type:String,default:""},width:{type:[String,Number],default:""},height:{type:[String,Number],default:""},block:{type:Boolean,default:!1},nativeType:{type:String,default:"button"},placeholder:{type:String,default:""}},setup(n,{attrs:a}){const s=e.shallowRef(null),u=e.computed(()=>({...n,...a})),f=e.getCurrentInstance(),c=o=>{console.log(o,"elllll"),o&&(f.exposed=o)};return e.onMounted(async()=>{if(e.isVue2){const o=await import("element-ui");s.value=o.Button}else{const o=await import("element-plus");s.value=o.ElButton}console.log(s.value,"buttonComponent.value"),console.log(f,"vmmmmm")}),{buttonComponent:s,allProps:u,h:e.h,changeRef:c}}});function h(n,a,s,u,f,c){return t.openBlock(),t.createBlock(t.resolveDynamicComponent(n.h(n.buttonComponent,{...n.allProps,ref:n.changeRef},n.$slots)))}const y=d(b,[["render",h],["__scopeId","data-v-1cb31901"]]),m=d(Object.assign({name:"SccbaInput"},{props:{type:{type:String,default:"text"},size:{type:String,default:""},placeholder:{type:String,default:""},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},clearable:{type:Boolean,default:!1},showPassword:{type:Boolean,default:!1},maxlength:{type:[String,Number],default:null},showWordLimit:{type:Boolean,default:!1},autocomplete:{type:String,default:"off"},name:{type:String,default:""},form:{type:String,default:""},required:{type:Boolean,default:!1},width:{type:[String,Number],default:""}},emits:["input","change","focus","blur","clear"],setup(n,{expose:a,emit:s}){const u=n,f=e.useAttrs(),c=e.shallowRef(null),o=e.computed(()=>({...u,...f}));e.onMounted(async()=>{if(e.isVue2){const p=await import("element-ui");c.value=p.Input}else{const p=await import("element-plus");c.value=p.ElInput}});const _=e.getCurrentInstance(),r=e.ref(null),w=p=>{r.value=p,e.isVue2&&_&&(_.exposed=p)};return a({getInputInstance:()=>r.value,focus:()=>r.value&&r.value.focus(),blur:()=>r.value&&r.value.blur(),select:()=>r.value&&r.value.select(),clear:()=>r.value&&r.value.clear(),inputRef:r}),(p,V)=>t.unref(c)?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(e.h)(t.unref(c),{...t.unref(o),ref:w},p.$slots)),{key:0})):t.createCommentVNode("",!0)}}),[["__scopeId","data-v-e40ba256"]]),B=[i,y,m],g=function(n){B.forEach(a=>{n.component(a.name,a)})};typeof window<"u"&&window.Vue&&g(window.Vue);const S={install:g,SccbaButton:i,MyButton1:y,SccbaInput:m};l.MyButton1=y,l.SccbaButton=i,l.SccbaInput=m,l.default=S,l.install=g,Object.defineProperties(l,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));
1
+ (function(a,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue-demi"),require("vue")):typeof define=="function"&&define.amd?define(["exports","vue-demi","vue"],e):(a=typeof globalThis<"u"?globalThis:a||self,e(a.SccbaUI={},a.VueDemi,a.Vue))})(this,(function(a,e,t){"use strict";const d=(n,l)=>{const s=n.__vccOpts||n;for(const[u,f]of l)s[u]=f;return s},i=d(Object.assign({name:"SccbaButton",inheritAttrs:!1},{props:{type:{type:String,default:"default"},size:{type:String,default:""},plain:{type:Boolean,default:!1},round:{type:Boolean,default:!1},circle:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},icon:{type:String,default:""},label:{type:String,default:""},width:{type:[String,Number],default:""},height:{type:[String,Number],default:""},block:{type:Boolean,default:!1},nativeType:{type:String,default:"button"},placeholder:{type:String,default:""}},setup(n){const l=n,s=e.useAttrs(),u=e.shallowRef(null),f=e.ref(null),c=e.computed(()=>({...l,...s}));return e.onMounted(async()=>{if(e.isVue2){const o=await import("element-ui");u.value=o.Button}else{const o=await import("element-plus");u.value=o.ElButton}}),(o,_)=>t.unref(u)?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(e.h)(t.unref(u),{...t.unref(c),ref:t.unref(f)},o.$slots)),{key:0})):t.createCommentVNode("",!0)}}),[["__scopeId","data-v-de371e67"]]),h=e.defineComponent({name:"MyButton",inheritAttrs:!1,props:{type:{type:String,default:"default"},size:{type:String,default:"medium"},plain:{type:Boolean,default:!1},round:{type:Boolean,default:!1},circle:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},icon:{type:String,default:""},label:{type:String,default:""},width:{type:[String,Number],default:""},height:{type:[String,Number],default:""},block:{type:Boolean,default:!1},nativeType:{type:String,default:"button"},placeholder:{type:String,default:""}},setup(n,{attrs:l}){const s=e.shallowRef(null),u=e.computed(()=>({...n,...l})),f=e.getCurrentInstance(),c=o=>{console.log(o,"elllll"),o&&(f.exposed=o)};return e.onMounted(async()=>{if(e.isVue2){const o=await import("element-ui");s.value=o.Button}else{const o=await import("element-plus");s.value=o.ElButton}console.log(s.value,"buttonComponent.value"),console.log(f,"vmmmmm")}),{buttonComponent:s,allProps:u,h:e.h,changeRef:c}}});function B(n,l,s,u,f,c){return t.openBlock(),t.createBlock(t.resolveDynamicComponent(n.h(n.buttonComponent,{...n.allProps,ref:n.changeRef},n.$slots)))}const y=d(h,[["render",B],["__scopeId","data-v-1cb31901"]]),m=d(Object.assign({name:"SccbaInput"},{props:{type:{type:String,default:"text"},size:{type:String,default:""},placeholder:{type:String,default:""},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},clearable:{type:Boolean,default:!1},showPassword:{type:Boolean,default:!1},maxlength:{type:[String,Number],default:null},showWordLimit:{type:Boolean,default:!1},autocomplete:{type:String,default:"off"},name:{type:String,default:""},form:{type:String,default:""},required:{type:Boolean,default:!1},width:{type:[String,Number],default:""}},emits:["input","change","focus","blur","clear"],setup(n,{expose:l,emit:s}){const u=n,f=e.useAttrs(),c=e.shallowRef(null),o=e.computed(()=>({...u,...f}));e.onMounted(async()=>{if(e.isVue2){const p=await import("element-ui");c.value=p.Input}else{const p=await import("element-plus");c.value=p.ElInput}});const _=e.getCurrentInstance(),r=e.ref(null),w=p=>{r.value=p,e.isVue2&&_&&(_.exposed=p)};return l({getInputInstance:()=>r.value,focus:()=>r.value&&r.value.focus(),blur:()=>r.value&&r.value.blur(),select:()=>r.value&&r.value.select(),clear:()=>r.value&&r.value.clear(),inputRef:r}),(p,V)=>t.unref(c)?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(e.h)(t.unref(c),{...t.unref(o),ref:w},p.$slots)),{key:0})):t.createCommentVNode("",!0)}}),[["__scopeId","data-v-e40ba256"]]),b=[i,y,m],g=function(n){b.forEach(l=>{n.component(l.name,l)})};b.forEach(n=>{n.install=function(l){l.component(n.name,n)}}),typeof window<"u"&&window.Vue&&g(window.Vue);const S={install:g,SccbaButton:i,MyButton1:y,SccbaInput:m};a.MyButton1=y,a.SccbaButton=i,a.SccbaInput=m,a.default=S,a.install=g,Object.defineProperties(a,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "sccba-ui",
3
- "version": "0.0.3",
3
+ "version": "0.0.5",
4
4
  "description": "一个基于 Vue 2/3 的 UI 组件库,使用 vue-demi 实现跨版本兼容",
5
5
  "keywords": [
6
6
  "vue",
@@ -21,7 +21,8 @@
21
21
  "exports": {
22
22
  ".": {
23
23
  "import": "./dist/sccba-ui.es.js",
24
- "require": "./dist/sccba-ui.cjs.js"
24
+ "require": "./dist/sccba-ui.cjs.js",
25
+ "default": "./dist/sccba-ui.cjs.js"
25
26
  }
26
27
  },
27
28
  "scripts": {
package/test-vue2.html ADDED
@@ -0,0 +1,34 @@
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>Vue 2 Test</title>
7
+ <script src="https://cdn.jsdelivr.net/npm/vue@2.7.16/dist/vue.js"></script>
8
+ <script src="https://cdn.jsdelivr.net/npm/element-ui@2.15.14/lib/index.js"></script>
9
+ <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/element-ui@2.15.14/lib/theme-chalk/index.css">
10
+ </head>
11
+ <body>
12
+ <div id="app">
13
+ <sccba-button type="primary">测试按钮</sccba-button>
14
+ <sccba-input placeholder="测试输入框"></sccba-input>
15
+ </div>
16
+
17
+ <script type="module">
18
+ import SccbaUI from './dist/sccba-ui.es.js';
19
+ import './dist/sccba-ui.css';
20
+
21
+ // 测试install函数
22
+ console.log('SccbaUI:', SccbaUI);
23
+ console.log('SccbaUI.install:', SccbaUI.install);
24
+ console.log('typeof SccbaUI.install:', typeof SccbaUI.install);
25
+
26
+ // 尝试安装
27
+ Vue.use(SccbaUI);
28
+
29
+ new Vue({
30
+ el: '#app'
31
+ });
32
+ </script>
33
+ </body>
34
+ </html>