cy-element-ui 1.1.26 → 1.1.28
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 +260 -37
- package/lib/CySelectDisplayInput.js +29 -13
- package/lib/CySubTitle.js +11 -2
- package/lib/CyTabDialog.js +70 -26
- package/lib/CyTreeSelect.js +131 -18
- package/lib/element-ui.common.js +262 -80
- package/lib/index.js +2 -2
- package/package.json +121 -133
- package/packages/cy/selectDisplayInput/src/main.vue +87 -75
- package/packages/cy/subTitle/src/main.vue +45 -36
- package/packages/cy/tabDialog/src/main.vue +315 -277
- package/packages/cy/treeSelect/src/main.vue +388 -290
- package/src/index.js +1 -1
- package/web-types.json +4908 -4193
package/README.md
CHANGED
|
@@ -1,5 +1,18 @@
|
|
|
1
1
|
# cy-element-ui 组件开发指南
|
|
2
2
|
|
|
3
|
+
## 环境要求
|
|
4
|
+
|
|
5
|
+
| 工具 | 版本要求 | 说明 |
|
|
6
|
+
|------|---------|------|
|
|
7
|
+
| **Node.js** | >= 14.x(推荐 16.x) | 项目使用 webpack 4 + Babel 6,需 Node.js 支持 |
|
|
8
|
+
| **npm** | >= 6.x | 包管理器,也可使用 yarn |
|
|
9
|
+
| **Git** | 任意版本 | 用于版本管理和发布流程 |
|
|
10
|
+
| **Make** | 可选 | Linux/macOS 原生支持;Windows 下可用 [Gow](https://github.com/bmatzku/gow)、[MinGW](http://www.mingw.org/) 或直接用 `node build/bin/new-cy.js` 替代 make 命令 |
|
|
11
|
+
|
|
12
|
+
> Windows 用户注意:`make new-cy xxx` 可替换为 `node build/bin/new-cy.js xxx`,效果完全相同。
|
|
13
|
+
|
|
14
|
+
---
|
|
15
|
+
|
|
3
16
|
## 一、在项目中安装使用
|
|
4
17
|
|
|
5
18
|
### 1.1 安装依赖
|
|
@@ -129,13 +142,14 @@ export default {
|
|
|
129
142
|
### 2.1 整体架构
|
|
130
143
|
|
|
131
144
|
```
|
|
132
|
-
|
|
145
|
+
chanyan-ui/ # 项目根目录
|
|
133
146
|
├── build/ # 构建工具目录
|
|
134
147
|
│ ├── bin/ # 脚本命令
|
|
135
148
|
│ │ ├── build-entry.js # 生成入口文件脚本
|
|
136
149
|
│ │ ├── gen-cy-types.js # 生成cy组件类型定义
|
|
137
150
|
│ │ ├── new.js # 创建el组件脚本
|
|
138
151
|
│ │ └── new-cy.js # 创建cy组件脚本
|
|
152
|
+
│ ├── dist.js # 完整构建脚本(Node API方式,替代CLI)
|
|
139
153
|
│ ├── webpack.conf.js # UMD构建配置
|
|
140
154
|
│ ├── webpack.common.js # CommonJS构建配置
|
|
141
155
|
│ ├── webpack.component.js # 组件单独构建配置
|
|
@@ -144,8 +158,12 @@ element-dev/ # 项目根目录
|
|
|
144
158
|
│ ├── docs/ # 文档内容
|
|
145
159
|
│ │ └── zh-CN/ # 中文文档
|
|
146
160
|
│ │ └── cy/ # 产研组件文档
|
|
161
|
+
│ ├── pages/zh-CN/ # 页面容器
|
|
162
|
+
│ │ ├── component.vue # 组件页容器(Element UI组件+开发指南等)
|
|
163
|
+
│ │ ├── independent.vue # 独立菜单通用容器(如产研)
|
|
164
|
+
│ │ └── index.vue # 首页
|
|
147
165
|
│ ├── nav.config.json # 导航配置
|
|
148
|
-
│ └── route.config.js #
|
|
166
|
+
│ └── route.config.js # 路由配置(自动识别独立菜单标记)
|
|
149
167
|
├── packages/ # 组件源码目录
|
|
150
168
|
│ ├── cy/ # 产研自定义组件
|
|
151
169
|
│ │ ├── treeSelect/ # 树形选择器
|
|
@@ -169,8 +187,10 @@ element-dev/ # 项目根目录
|
|
|
169
187
|
|----------|----------|------|----------|
|
|
170
188
|
| 一级 | `build/` | 构建工具 | 包含所有构建脚本和webpack配置文件 |
|
|
171
189
|
| 二级 | `build/bin/` | 命令脚本 | new.js创建el组件,new-cy.js创建cy组件 |
|
|
190
|
+
| 二级 | `build/dist.js` | 完整构建脚本 | 统一管理完整构建流程(替代CLI方式) |
|
|
172
191
|
| 一级 | `examples/` | 示例站点 | 组件展示文档和示例代码 |
|
|
173
192
|
| 二级 | `examples/docs/zh-CN/cy/` | 产研组件文档 | cy组件的中文文档目录 |
|
|
193
|
+
| 二级 | `examples/pages/zh-CN/` | 页面容器 | component.vue(组件页)、independent.vue(独立菜单通用容器) |
|
|
174
194
|
| 一级 | `packages/` | 组件源码 | 所有el和cy组件的源代码 |
|
|
175
195
|
| 二级 | `packages/cy/` | 产研组件 | 自定义的cy-*组件,独立目录管理 |
|
|
176
196
|
| 三级 | `packages/cy/treeSelect/` | 树形选择器 | CyTreeSelect组件源码 |
|
|
@@ -489,27 +509,37 @@ export default {
|
|
|
489
509
|
|
|
490
510
|
修改 `examples/nav.config.json`:
|
|
491
511
|
|
|
512
|
+
> **注意**:产研等独立菜单使用 `independent` + `pathPrefix` 标记,路由会自动处理。详见 [九、新增独立菜单](#九新增独立菜单类似产研)。
|
|
513
|
+
|
|
514
|
+
**普通组件(添加到"组件"菜单下):**
|
|
515
|
+
|
|
516
|
+
在 `"name": "组件"` 的 groups 中找到对应分组,添加一项:
|
|
517
|
+
|
|
492
518
|
```json
|
|
493
519
|
{
|
|
494
|
-
"
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
|
|
520
|
+
"path": "/advancedSelect",
|
|
521
|
+
"title": "AdvancedSelect 高级选择器"
|
|
522
|
+
}
|
|
523
|
+
```
|
|
524
|
+
|
|
525
|
+
**独立菜单(如"产研"):**
|
|
526
|
+
|
|
527
|
+
```json
|
|
528
|
+
{
|
|
529
|
+
"name": "产研",
|
|
530
|
+
"independent": true,
|
|
531
|
+
"pathPrefix": "/cy",
|
|
532
|
+
"groups": [
|
|
533
|
+
{
|
|
534
|
+
"groupName": "基础组件",
|
|
535
|
+
"list": [
|
|
536
|
+
{ "path": "/cy/treeSelect", "title": "TreeSelect 下拉树" },
|
|
537
|
+
{ "path": "/cy/tabDialog", "title": "TabDialog 页签对话框" },
|
|
538
|
+
{ "path": "/cy/subTitle", "title": "SubTitle 副标题" },
|
|
539
|
+
{ "path": "/cy/selectDisplayInput", "title": "SelectDisplayInput 选择显示输入框" }
|
|
540
|
+
]
|
|
541
|
+
}
|
|
542
|
+
]
|
|
513
543
|
}
|
|
514
544
|
```
|
|
515
545
|
|
|
@@ -534,26 +564,43 @@ npm run dist
|
|
|
534
564
|
|
|
535
565
|
### 6.2 分步构建
|
|
536
566
|
|
|
567
|
+
> **注意**:当前 `dist` 命令已统一由 `build/dist.js` 管理(使用 webpack Node API),以下为内部流程说明。
|
|
568
|
+
|
|
569
|
+
**完整构建(推荐):**
|
|
570
|
+
|
|
537
571
|
```bash
|
|
538
|
-
|
|
539
|
-
|
|
572
|
+
npm run dist
|
|
573
|
+
```
|
|
540
574
|
|
|
541
|
-
|
|
542
|
-
|
|
575
|
+
该命令自动依次执行:
|
|
576
|
+
|
|
577
|
+
| 步骤 | 命令/操作 | 说明 |
|
|
578
|
+
|------|----------|------|
|
|
579
|
+
| 1 | `npm run clean` | 清理 lib 目录 |
|
|
580
|
+
| 2 | `npm run build:file` | 自动生成 src/index.js 入口文件 |
|
|
581
|
+
| 3 | eslint + lint | 代码质量检查 |
|
|
582
|
+
| 4 | Webpack UMD | 打包 lib/index.js |
|
|
583
|
+
| 5 | Webpack CommonJS | 打包 lib/element-ui.common.js |
|
|
584
|
+
| 6 | Webpack Component | 各组件单独打包到 lib/ |
|
|
585
|
+
| 7 | `npm run build:utils` | 构建工具函数 |
|
|
586
|
+
| 8 | `npm run build:umd` | UMD 补充处理 |
|
|
587
|
+
| 9 | `npm run build:theme` | 编译 SCSS 主题样式 |
|
|
543
588
|
|
|
544
|
-
|
|
545
|
-
npx webpack --config build/webpack.conf.js
|
|
589
|
+
**手动单步执行(调试用):**
|
|
546
590
|
|
|
547
|
-
|
|
548
|
-
|
|
591
|
+
```bash
|
|
592
|
+
# 清理
|
|
593
|
+
npm run clean
|
|
549
594
|
|
|
550
|
-
#
|
|
551
|
-
|
|
595
|
+
# 生成入口文件
|
|
596
|
+
npm run build:file
|
|
552
597
|
|
|
553
|
-
#
|
|
554
|
-
|
|
598
|
+
# 单独执行某一步webpack构建
|
|
599
|
+
npx webpack --config build/webpack.conf.js # UMD
|
|
600
|
+
npx webpack --config build/webpack.common.js # CommonJS
|
|
601
|
+
npx webpack --config build/webpack.component.js # 组件单独打包
|
|
555
602
|
|
|
556
|
-
#
|
|
603
|
+
# 样式编译
|
|
557
604
|
npm run build:theme
|
|
558
605
|
```
|
|
559
606
|
|
|
@@ -596,7 +643,18 @@ npm login
|
|
|
596
643
|
### 7.3 发布
|
|
597
644
|
|
|
598
645
|
```bash
|
|
599
|
-
|
|
646
|
+
# 发布(scoped 包需要 --access public)
|
|
647
|
+
npm publish --access public
|
|
648
|
+
```
|
|
649
|
+
|
|
650
|
+
**发布后在其他项目中更新:**
|
|
651
|
+
|
|
652
|
+
```bash
|
|
653
|
+
# 清除缓存,确保拉取最新版
|
|
654
|
+
rmdir /s /q node_modules\cy-element-ui
|
|
655
|
+
npm cache clean --force
|
|
656
|
+
del package-lock.json
|
|
657
|
+
npm install cy-element-ui@latest
|
|
600
658
|
```
|
|
601
659
|
|
|
602
660
|
---
|
|
@@ -622,8 +680,173 @@ npm publish
|
|
|
622
680
|
2. **类型定义**:cy组件的类型定义文件不带 `cy-` 前缀,使用连字符命名(如 `tree-select.d.ts`)
|
|
623
681
|
3. **样式命名**:使用 BEM 命名规范,cy组件样式类名以 `cy-` 开头
|
|
624
682
|
4. **文档语言**:仅提供中文文档,不提供其他语言版本
|
|
683
|
+
5. **async/await**:项目支持 async/await(babel-preset-env + stage-2 自动转译)
|
|
684
|
+
|
|
685
|
+
---
|
|
686
|
+
|
|
687
|
+
## 九、新增独立菜单(类似产研)
|
|
688
|
+
|
|
689
|
+
### 9.1 概念说明
|
|
690
|
+
|
|
691
|
+
本项目支持在顶部导航栏中添加**独立的菜单分类**,与"组件"菜单完全隔离。例如现有的"产研"菜单就是一个独立菜单——它有自己的路由容器、侧边栏、文档目录,不会与"组件"页面混在一起。
|
|
692
|
+
|
|
693
|
+
### 9.2 工作原理
|
|
694
|
+
|
|
695
|
+
| 文件 | 作用 |
|
|
696
|
+
|------|------|
|
|
697
|
+
| `examples/nav.config.json` | 通过 `independent: true` + `pathPrefix` 标记独立菜单 |
|
|
698
|
+
| `examples/route.config.js` | 自动识别标记,生成独立父路由 + 容器 |
|
|
699
|
+
| `examples/pages/zh-CN/independent.vue` | 通用容器组件(自动过滤侧边栏数据) |
|
|
700
|
+
|
|
701
|
+
**无需为每个独立菜单单独创建 vue 文件!**
|
|
702
|
+
|
|
703
|
+
### 9.3 新增步骤详解
|
|
704
|
+
|
|
705
|
+
以新增一个名为"数据平台"、路径前缀 `/dp` 的独立菜单为例:
|
|
706
|
+
|
|
707
|
+
#### 步骤 1:修改 nav.config.json
|
|
708
|
+
|
|
709
|
+
在 `"zh-CN"` 数组末尾添加一个新对象:
|
|
710
|
+
|
|
711
|
+
```json
|
|
712
|
+
{
|
|
713
|
+
"name": "数据平台",
|
|
714
|
+
"independent": true,
|
|
715
|
+
"pathPrefix": "/dp",
|
|
716
|
+
"groups": [
|
|
717
|
+
{
|
|
718
|
+
"groupName": "基础组件",
|
|
719
|
+
"list": [
|
|
720
|
+
{
|
|
721
|
+
"path": "/dp/dataTable",
|
|
722
|
+
"title": "DataTable 数据表格"
|
|
723
|
+
},
|
|
724
|
+
{
|
|
725
|
+
"path": "/dp/dataChart",
|
|
726
|
+
"title": "DataChart 数据图表"
|
|
727
|
+
}
|
|
728
|
+
]
|
|
729
|
+
}
|
|
730
|
+
]
|
|
731
|
+
}
|
|
732
|
+
```
|
|
733
|
+
|
|
734
|
+
**关键字段说明:**
|
|
735
|
+
|
|
736
|
+
| 字段 | 是否必须 | 说明 |
|
|
737
|
+
|------|---------|------|
|
|
738
|
+
| `name` | 必须 | 导航栏显示名称,也是容器匹配的标识 |
|
|
739
|
+
| `independent` | 必须 | 固定为 `true`,标记为独立菜单 |
|
|
740
|
+
| `pathPrefix` | 必须 | URL 路径前缀,如 `/dp` → 最终路径 `/zh-CN/dp/dataTable` |
|
|
741
|
+
| `groups` | 必须(或用 children) | 子项分组列表(与组件菜单结构一致) |
|
|
742
|
+
| `groups[].list[].path` | 必须 | **必须以 pathPrefix 开头**,如 `/dp/dataTable` |
|
|
743
|
+
|
|
744
|
+
#### 步骤 2:创建文档文件
|
|
745
|
+
|
|
746
|
+
每个子组件需要对应的 md 文档:
|
|
747
|
+
|
|
748
|
+
```
|
|
749
|
+
examples/docs/zh-CN/
|
|
750
|
+
├── dp/ # 新建目录(与 pathPrefix 对应)
|
|
751
|
+
│ ├── dataTable.md # DataTable 组件文档
|
|
752
|
+
│ └── dataChart.md # DataChart 组件文档
|
|
753
|
+
└── cy/ # 已有的产研文档
|
|
754
|
+
├── treeSelect.md
|
|
755
|
+
└── ...
|
|
756
|
+
```
|
|
757
|
+
|
|
758
|
+
文档格式参照 [五、编写组件文档](#五编写组件文档)。
|
|
759
|
+
|
|
760
|
+
#### 步骤 3:创建组件源码(如果是有代码的新组件)
|
|
761
|
+
|
|
762
|
+
如果这个独立菜单下包含全新的自定义组件:
|
|
763
|
+
|
|
764
|
+
```bash
|
|
765
|
+
# 使用 Makefile 创建组件
|
|
766
|
+
make new-cy dataTable 数据表格
|
|
767
|
+
make new-cy dataChart 数据图表
|
|
768
|
+
```
|
|
769
|
+
|
|
770
|
+
这会自动创建:
|
|
771
|
+
- `packages/cy/dataTable/src/main.vue`
|
|
772
|
+
- `packages/theme-chalk/src/cy/dataTable.scss`
|
|
773
|
+
- 并更新 `components.json`、样式 index.scss 等
|
|
774
|
+
|
|
775
|
+
> 如果只是引用已有组件做展示页,则不需要创建组件源码,只需写文档即可。
|
|
776
|
+
|
|
777
|
+
#### 步骤 4:(可选)添加 i18n 翻译
|
|
778
|
+
|
|
779
|
+
如果导航栏文字需要国际化,修改 `examples/i18n/component.json`:
|
|
780
|
+
|
|
781
|
+
```json
|
|
782
|
+
[
|
|
783
|
+
{
|
|
784
|
+
"lang": "zh-CN",
|
|
785
|
+
"header": {
|
|
786
|
+
"guide": "指南",
|
|
787
|
+
"components": "组件",
|
|
788
|
+
"chanyan": "产研",
|
|
789
|
+
"dataPlatform": "数据平台", // ← 新增
|
|
790
|
+
...
|
|
791
|
+
}
|
|
792
|
+
}
|
|
793
|
+
]
|
|
794
|
+
```
|
|
795
|
+
|
|
796
|
+
然后修改 `examples/components/header.vue` 中的导航链接:
|
|
797
|
+
|
|
798
|
+
```html
|
|
799
|
+
<li class="nav-item">
|
|
800
|
+
<router-link :to="`/${ lang }/dp`">{{ langConfig.dataPlatform }}</router-link>
|
|
801
|
+
</li>
|
|
802
|
+
```
|
|
803
|
+
|
|
804
|
+
#### 步骤 5:验证
|
|
805
|
+
|
|
806
|
+
```bash
|
|
807
|
+
# 启动开发服务器
|
|
808
|
+
npm run dev
|
|
809
|
+
```
|
|
810
|
+
|
|
811
|
+
访问 `http://localhost:8086/#/zh-CN/dp`,应能看到:
|
|
812
|
+
1. 顶部导航栏新增"数据平台"入口
|
|
813
|
+
2. 点击后进入独立页面,侧边栏只显示"基础组件"分组下的子项
|
|
814
|
+
3. 点击子项能正常显示对应文档内容
|
|
815
|
+
|
|
816
|
+
### 9.4 路由生成规则
|
|
817
|
+
|
|
818
|
+
当 `route.config.js` 遇到 `independent: true` 的菜单时,自动执行以下操作:
|
|
819
|
+
|
|
820
|
+
```
|
|
821
|
+
输入:name="数据平台", pathPrefix="/dp"
|
|
822
|
+
|
|
823
|
+
自动生成的路由结构:
|
|
824
|
+
/zh-CN/dp (redirect → /zh-CN/dp/dataTable)
|
|
825
|
+
├── dataTable → examples/docs/zh-CN/dp/dataTable.md
|
|
826
|
+
└── dataChart → examples/docs/zh-CN/dp/dataChart.md
|
|
827
|
+
```
|
|
828
|
+
|
|
829
|
+
与"产研"的路由完全平行:
|
|
830
|
+
|
|
831
|
+
```
|
|
832
|
+
/zh-CN/component (component.vue 容器)
|
|
833
|
+
├── installation, button, ... (Element UI 组件)
|
|
834
|
+
|
|
835
|
+
/zh-CN/cy (independent.vue 容器)
|
|
836
|
+
├── treeSelect, tabDialog, ... (产研组件)
|
|
837
|
+
|
|
838
|
+
/zh-CN/dp (independent.vue 容器) ← 新增
|
|
839
|
+
├── dataTable, dataChart (数据平台组件)
|
|
840
|
+
```
|
|
841
|
+
|
|
842
|
+
### 9.5 注意事项
|
|
843
|
+
|
|
844
|
+
1. **pathPrefix 必须唯一**:不能有两个独立菜单使用相同的 `pathPrefix`
|
|
845
|
+
2. **子项 path 必须以 pathPrefix 开头**:否则路由无法正确剥离前缀
|
|
846
|
+
3. **文档目录名与 pathPrefix 一致**:如 `/dp` 的文档放在 `docs/zh-CN/dp/` 下
|
|
847
|
+
4. **不需要手动改 route.config.js 或创建新的 vue 容器**:全部自动处理
|
|
625
848
|
|
|
626
849
|
---
|
|
627
850
|
|
|
628
|
-
**版本**: v1.
|
|
629
|
-
**最后更新**:
|
|
851
|
+
**版本**: v1.1.26
|
|
852
|
+
**最后更新**: 2026年5月
|
|
@@ -199,7 +199,7 @@ function normalizeComponent(
|
|
|
199
199
|
// ESM COMPAT FLAG
|
|
200
200
|
__webpack_require__.r(__webpack_exports__);
|
|
201
201
|
|
|
202
|
-
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/cy/selectDisplayInput/src/main.vue?vue&type=template&id=
|
|
202
|
+
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/cy/selectDisplayInput/src/main.vue?vue&type=template&id=963f9c64
|
|
203
203
|
var render = function () {
|
|
204
204
|
var _vm = this
|
|
205
205
|
var _h = _vm.$createElement
|
|
@@ -252,7 +252,7 @@ var staticRenderFns = []
|
|
|
252
252
|
render._withStripped = true
|
|
253
253
|
|
|
254
254
|
|
|
255
|
-
// CONCATENATED MODULE: ./packages/cy/selectDisplayInput/src/main.vue?vue&type=template&id=
|
|
255
|
+
// CONCATENATED MODULE: ./packages/cy/selectDisplayInput/src/main.vue?vue&type=template&id=963f9c64
|
|
256
256
|
|
|
257
257
|
// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/cy/selectDisplayInput/src/main.vue?vue&type=script&lang=js
|
|
258
258
|
//
|
|
@@ -266,35 +266,34 @@ render._withStripped = true
|
|
|
266
266
|
//
|
|
267
267
|
//
|
|
268
268
|
//
|
|
269
|
+
//
|
|
270
|
+
//
|
|
271
|
+
//
|
|
269
272
|
|
|
270
273
|
/* harmony default export */ var mainvue_type_script_lang_js = ({
|
|
271
274
|
name: 'CySelectDisplayInput',
|
|
272
275
|
props: {
|
|
273
|
-
//
|
|
276
|
+
// 文本框需要显示的内容(Number 或 String)
|
|
274
277
|
value: {
|
|
275
278
|
type: [Number, String],
|
|
276
279
|
default: ''
|
|
277
280
|
},
|
|
278
|
-
|
|
279
|
-
// 文本框 的提示文本
|
|
281
|
+
// 文本框未选择时的占位提示文本
|
|
280
282
|
placeholder: {
|
|
281
283
|
type: String,
|
|
282
284
|
default: ''
|
|
283
285
|
},
|
|
284
|
-
|
|
285
|
-
// 选择按钮 的文字
|
|
286
|
+
// 选择按钮上的文字
|
|
286
287
|
btnText: {
|
|
287
288
|
type: String,
|
|
288
289
|
default: '选择'
|
|
289
290
|
},
|
|
290
|
-
|
|
291
|
-
// 选择按钮 的显示条件
|
|
291
|
+
// 选择按钮的显示条件
|
|
292
292
|
showBtn: {
|
|
293
293
|
type: Boolean,
|
|
294
294
|
default: true
|
|
295
295
|
},
|
|
296
|
-
|
|
297
|
-
// 是否显示 删除按钮
|
|
296
|
+
// 是否显示删除按钮
|
|
298
297
|
showDelete: {
|
|
299
298
|
type: Boolean,
|
|
300
299
|
default: false
|
|
@@ -305,23 +304,40 @@ render._withStripped = true
|
|
|
305
304
|
},
|
|
306
305
|
|
|
307
306
|
computed: {
|
|
308
|
-
//
|
|
307
|
+
// 文本框是否需要点击,如果为 true,输入框中的字体会变蓝并将鼠标变为小手
|
|
309
308
|
cursor: function cursor() {
|
|
310
|
-
// 判断父组件是否坚挺了info事件
|
|
311
309
|
return this.$listeners.info;
|
|
312
310
|
}
|
|
313
311
|
},
|
|
314
312
|
created: function created() {},
|
|
315
313
|
|
|
316
314
|
methods: {
|
|
315
|
+
/**
|
|
316
|
+
* 点击显示区:仅当已赋值时触发 info 事件
|
|
317
|
+
* @returns {void}
|
|
318
|
+
*/
|
|
317
319
|
handleInfo: function handleInfo() {
|
|
318
320
|
if (this.value) {
|
|
319
321
|
this.$emit('info');
|
|
320
322
|
}
|
|
321
323
|
},
|
|
324
|
+
|
|
325
|
+
|
|
326
|
+
/**
|
|
327
|
+
* 点击选择按钮:触发 click 事件
|
|
328
|
+
* @fires {Event} click
|
|
329
|
+
* @returns {void}
|
|
330
|
+
*/
|
|
322
331
|
handleClick: function handleClick() {
|
|
323
332
|
this.$emit('click');
|
|
324
333
|
},
|
|
334
|
+
|
|
335
|
+
|
|
336
|
+
/**
|
|
337
|
+
* 点击删除按钮:触发 delete 事件
|
|
338
|
+
* @fires {Event} delete
|
|
339
|
+
* @returns {void}
|
|
340
|
+
*/
|
|
325
341
|
handleDelete: function handleDelete() {
|
|
326
342
|
this.$emit('delete');
|
|
327
343
|
}
|
package/lib/CySubTitle.js
CHANGED
|
@@ -199,7 +199,7 @@ function normalizeComponent(
|
|
|
199
199
|
// ESM COMPAT FLAG
|
|
200
200
|
__webpack_require__.r(__webpack_exports__);
|
|
201
201
|
|
|
202
|
-
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/cy/subTitle/src/main.vue?vue&type=template&id=
|
|
202
|
+
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/cy/subTitle/src/main.vue?vue&type=template&id=afb2cdd0
|
|
203
203
|
var render = function () {
|
|
204
204
|
var _vm = this
|
|
205
205
|
var _h = _vm.$createElement
|
|
@@ -218,7 +218,7 @@ var staticRenderFns = []
|
|
|
218
218
|
render._withStripped = true
|
|
219
219
|
|
|
220
220
|
|
|
221
|
-
// CONCATENATED MODULE: ./packages/cy/subTitle/src/main.vue?vue&type=template&id=
|
|
221
|
+
// CONCATENATED MODULE: ./packages/cy/subTitle/src/main.vue?vue&type=template&id=afb2cdd0
|
|
222
222
|
|
|
223
223
|
// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/cy/subTitle/src/main.vue?vue&type=script&lang=js
|
|
224
224
|
//
|
|
@@ -232,20 +232,29 @@ render._withStripped = true
|
|
|
232
232
|
//
|
|
233
233
|
//
|
|
234
234
|
//
|
|
235
|
+
//
|
|
236
|
+
//
|
|
237
|
+
//
|
|
235
238
|
|
|
236
239
|
/* harmony default export */ var mainvue_type_script_lang_js = ({
|
|
237
240
|
name: 'CySubTitle',
|
|
238
241
|
props: {
|
|
242
|
+
// 标题文本
|
|
239
243
|
title: {
|
|
240
244
|
type: String,
|
|
241
245
|
default: ''
|
|
242
246
|
},
|
|
247
|
+
// 左侧装饰边框线的颜色(传入后通过 lineStyle 应用到边框)
|
|
243
248
|
lineColor: {
|
|
244
249
|
type: String,
|
|
245
250
|
default: ''
|
|
246
251
|
}
|
|
247
252
|
},
|
|
248
253
|
computed: {
|
|
254
|
+
/**
|
|
255
|
+
* 根据 lineColor 生成左边框颜色样式;未传入时返回空对象
|
|
256
|
+
* @returns {Object} 包含 borderLeftColor 的样式对象或空对象
|
|
257
|
+
*/
|
|
249
258
|
lineStyle: function lineStyle() {
|
|
250
259
|
if (this.lineColor) {
|
|
251
260
|
return {
|