gwell-dialog 0.1.2 → 0.1.6

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
@@ -2,7 +2,7 @@
2
2
  * @Author: lengyihan
3
3
  * @Date: 2023-11-17 18:05:01
4
4
  * @LastEditors: lengyihan
5
- * @LastEditTime: 2023-12-04 16:40:14
5
+ * @LastEditTime: 2023-12-13 15:51:04
6
6
  * @Description:
7
7
  * @FilePath: \gwell-dialog\README.md
8
8
  -->
@@ -37,55 +37,197 @@ yarn lint
37
37
 
38
38
  See [Configuration Reference](https://cli.vuejs.org/config/).
39
39
 
40
+ ### 使用场景
41
+
42
+ 弹窗组件的封装可以提高代码的复用性和可维护性,使开发者能够更加方便地在不同的场景中使用和管理弹窗,根据弹窗组件规范设计图,通过封装,可以统一弹窗的样式和行为,并提供简洁的接口供其他组件或页面调用,这样,开发者可以更加专注于业务逻辑的实现,而无需重复编写弹窗的代码。弹窗组件中设有默认的头部、内容区和尾部,这三部分分别可使用插槽自定义内容,弹窗内设有默认头部关闭按钮、取消和确定按钮,底部关闭按钮等。
43
+
40
44
  ### 目录结构
41
45
 
42
46
  ```
43
- |-- gwell-dialog
44
- |-- .env.development
45
- |-- .env.production
46
- |-- .eslintignore
47
- |-- .eslintrc.js
48
- |-- .gitignore
49
- |-- .npmignore
50
- |-- .prettierignore
51
- |-- .prettierrc
52
- |-- .yarnignore
53
- |-- babel.config.js
54
- |-- jsconfig.json
55
- |-- package-lock.json
56
- |-- package.json
57
- |-- postcss.config.js
58
- |-- README.md
59
- |-- vue.config.js
60
- |-- yarn.lock
61
- |-- examples
62
- | |-- App.vue
63
- | |-- main.js
64
- | |-- assets
65
- | | |-- css
66
- | | | |-- style.scss
67
- | | |-- images
68
- | | |-- icon_bottomClose.png
69
- | | |-- icon_close.png
70
- | |-- router
71
- | | |-- index.js
72
- | |-- views
73
- | |-- HomeView.vue
74
- |-- lib
75
- | |-- demo.html
76
- | |-- gwell-dialog.common.js
77
- | |-- gwell-dialog.common.js.map
78
- | |-- gwell-dialog.css
79
- | |-- gwell-dialog.umd.js
80
- | |-- gwell-dialog.umd.js.map
81
- | |-- gwell-dialog.umd.min.js
82
- | |-- gwell-dialog.umd.min.js.map
83
- |-- packages
84
- | |-- index.js
85
- | |-- dialog
86
- | |-- index.js
87
- | |-- main.vue
88
- |-- public
89
- |-- favicon.ico
90
- |-- index.html
47
+ ├─.env.development
48
+ ├─.env.production
49
+ ├─.eslintignore
50
+ ├─.eslintrc.js
51
+ ├─.gitignore
52
+ ├─.npmignore
53
+ ├─.prettierignore
54
+ ├─.prettierrc
55
+ ├─.yarnignore
56
+ ├─babel.config.js
57
+ ├─examples ------------------------- // 示例
58
+ │ ├─App.vue ------------------------ // 入口文件
59
+ │ ├─assets
60
+ │ │ ├─css
61
+ │ │ │ └─style.scss
62
+ │ │ └─images
63
+ │ │  ├─icon_bottomClose.png
64
+ │ │  └─icon_close.png
65
+ │ ├─main.js ------------------------ // 全局注册文件
66
+ │ └─views
67
+ │  └─HomeView.vue ----------------- // 组件引用示例
68
+ ├─jsconfig.json
69
+ ├─lib
70
+ │ ├─demo.html
71
+ │ ├─gwell-dialog.common.js
72
+ │ ├─gwell-dialog.common.js.map
73
+ │ ├─gwell-dialog.css
74
+ │ ├─gwell-dialog.umd.js
75
+ │ ├─gwell-dialog.umd.js.map
76
+ │ ├─gwell-dialog.umd.min.js
77
+ │ └─gwell-dialog.umd.min.js.map
78
+ ├─package.json
79
+ ├─packages
80
+ │ ├─dialog
81
+ │ │ ├─index.js --------------------- // 导出弹窗组件
82
+ │ │ └─main.vue --------------------- // 弹窗组件开发
83
+ │ └─index.js ----------------------- // 整合并导出所有组件,实现组件的全局注册
84
+ ├─postcss.config.js ---------------- // 屏幕适配
85
+ ├─public
86
+ │ ├─favicon.ico
87
+ │ └─index.html
88
+ ├─README.md
89
+ ├─vue.config.js -------------------- // 配置入口文件
90
+ └─yarn.lock
91
+ ```
92
+
93
+ ### 可传参数
94
+
95
+ ```json
96
+ {
97
+ showDialog: Boolean, //是否显示弹窗
98
+ title: String, //弹窗标题
99
+ closeOnClickOverlay: {
100
+ //点击弹窗外部可以关闭弹窗
101
+ type: Boolean,
102
+ default: true
103
+ },
104
+ className: {
105
+ //自定义内容区域类名
106
+ type: String,
107
+ default: '' // centered:居中, veryBottom:最底部弹窗,bottomed:底部, special:特殊类型
108
+ },
109
+ buttons: {
110
+ //自定义按钮
111
+ type: Array,
112
+ default: () => [
113
+ //如果不传按钮则默认显示确定和关闭按钮
114
+ // {
115
+ // label: '', //标题,可以是html类型
116
+ // action: Function, //方法
117
+ // className: '', //自定义样式 cancelBottom:最底部取消按钮,red:红色按钮,custom:自定义按钮
118
+ // style: {}
119
+ // }
120
+ ]
121
+ },
122
+ removeDefaultBtn: {
123
+ type: Array, //传入默认按钮defaultBtn的type值就会删除对应的默认按钮,例如:['confirm']
124
+ default: () => []
125
+ },
126
+ isShowDefaultBtn: {
127
+ //是否显示默认按钮
128
+ type: Boolean,
129
+ default: true
130
+ },
131
+ cancelButtonText: String, //取消按钮文案
132
+ confirmButtonText: String, //确认按钮文案
133
+ cancelButtonColor: String, //取消按钮颜色
134
+ confirmButtonColor: String, //确认按钮颜色
135
+ isShowCloseBtn: {
136
+ //是否显示顶部关闭按钮
137
+ type: Boolean,
138
+ default: false
139
+ },
140
+ isShowCloseBottomBtn: {
141
+ //是否显示底部关闭按钮
142
+ type: Boolean,
143
+ default: false
144
+ },
145
+ overlay: {
146
+ //是否展示遮罩层
147
+ type: Boolean,
148
+ default: true
149
+ },
150
+ overlayClass: String, //自定义遮罩层类名
151
+ overlayStyle: {
152
+ //自定义遮罩层样式
153
+ type: Object,
154
+ default: () => {}
155
+ },
156
+ lockScroll: {
157
+ //锁定背景滚动
158
+ type: Boolean,
159
+ default: true
160
+ },
161
+ beforeClose: {
162
+ //关闭前的回调函数
163
+ type: Function,
164
+ default: null
165
+ },
166
+ transition: {
167
+ //动画类名
168
+ type: String,
169
+ default: 'fade'
170
+ }
171
+ }
172
+ ```
173
+
174
+ ### 使用教程
175
+
176
+ 1、第一步安装:
177
+
178
+ ```shell
179
+ npm install gwell-dialog
180
+ ```
181
+
182
+
183
+
184
+ ```shell
185
+ yarn add gwell-dialog
186
+ ```
187
+
188
+ 2、第二步注册组件
189
+ `import GwellDialog from 'gwell-dialog';`
190
+ `import 'gwell-dialog/lib/gwell-dialog.css';`
191
+ `Vue.use(GwellDialog);`
192
+ 3、第三步使用
193
+ `<GwellDialog :showDialog.sync="showDialog"></GwellDialog>`
194
+
195
+ ### 配置发布
196
+
197
+ 1、在 package.json 文件的 scripts 中配置 lib 编译 组件库命令
198
+ 主要需要四个参数:
199
+
200
+ 1. target: 默认为构建应用,改为 lib 即可启用构建库模式
201
+ 2. name: 输出文件名
202
+ 3. dest: 输出目录,默认为 dist,这里我们改为** lib**
203
+ 4. entry: 入口文件路径,默认为 src/App.vue,这里改为 packages/index.js
204
+ 例如:"lib": "vue-cli-service build --target lib --name gwell-dialog --dest lib packages/index.js"
205
+ 2、然后 执行编译命令
206
+
207
+ ```shell
208
+ npm run lib
209
+ ```
210
+
211
+ 3、在 npm 官网注册后登录 npm
212
+
213
+ ```shell
214
+ npm login
215
+ ```
216
+
217
+ 4、如果以前改过 npm 的镜像地址,比如使用了淘宝镜像,就先改回来
218
+
219
+ ```shell
220
+ npm config set registry http://registry.npmjs.org
221
+ ```
222
+
223
+ 5、发布
224
+
225
+ ```shell
226
+ npm publish
227
+ ```
228
+
229
+ 6、修改 npm 包
230
+
231
+ ```shell
232
+ npm version patch
91
233
  ```