npm.io
1.0.8 • Published 6 years ago

dhcc-front-component

Licence
MIT
Version
1.0.8
Deps
2
Size
1.3 MB
Vulns
1
Weekly
0

dhcc-front-component

安装步骤

// 进入模板目录
npm install         // 安装项目依赖,等待安装完成之后

本地开发

// 开启服务器,浏览器访问 http://localhost:8080
npm run dev

构建生产

// 执行构建命令,生成的dist文件夹放在服务器下即可访问
npm run build

组件使用说明与演示

//涉及全局的公共组件已注册,路径为src/common/script/globalComponents.js 调用组件时直接使用标签,如表单组件 <v-form></v-form>
vForm Attributes
参数 说明 类型
arrList 渲染表单的结构(具体prop看下面的详情) Array
search 该表单是否应用于检索条件区域,如果为true则支持检索并隐藏其他按钮(默认false) Boolean
buttonGroup 表单需要的按钮组,参数固定为['submit','cancle','reset',''close],分别代表 新增、清空、重置、关闭。其他根据需求需要的按钮请使用插槽。插槽名称为slotBtn。如果不加这个属性时默认新增时按钮为(提交、清空、关闭);编辑时按钮为(提交、重置、关闭) Array
url 提交表单的接口 String
findById 编辑或详情时返显数据的接口与参数集合 Object
formTemplate 提交之后保持在原有页面,需要这个参数;可参照用户管理或者机构管理 Object
labelWidth 表单域标签的宽度 String
labelPosition 表单域标签的位置 String
arrList Attributes
参数 说明 类型
type 表单类型(目前支持input,textarea,select,date,daterange,password,tree,cascader) String
name 字段名 String
value 默认值) String
param 当type为select时,必须加param参数,值为字典参数 String
customOption 当type为select时,自定义下拉内容,格式例如 {"0":"自","1":"定","2":"义"},但要把param去掉 Object
label 表单标签名称 String
noReset 禁止清空,默认false Boolean
disabled 设置禁用,默认false Boolean
filter 当type为select时,需要过滤掉的选项的value Array
span 栅格布局长度 Number
hide 是否显示隐藏 注意,hide:true是隐藏,默认显示 Boolean
rule 对应表单校验规则,规则见elementui 表单校验 Array
eventChange 下拉框监听事件, 如果该下拉支持监听,使用方法见下面Form Events Boolean
eventBlur 表单失去焦点事件,用法和eventChange事件相似 Boolean
md ≥992px 响应式栅格数或者栅格属性对象 number/object (例如: {span: 4, offset: 4})
lg ≥1200px 响应式栅格数或者栅格属性对象 number/object (例如: {span: 4, offset: 4})
xl ≥1920px 响应式栅格数或者栅格属性对象 number/object (例如: {span: 4, offset: 4})
vForm Events
事件名称 说明 使用方法
eventChange 下拉监听事件 在组件上绑定事件,<v-form @eventChange="方法名"> 然后在对应表单上加eventChange:true的属性。在事件内用拓展公共方法onselect()控制指定表单
eventBlur 表单失去焦点事件 在组件上绑定事件,<v-form @eventChange="方法名"> 然后在对应表单上加eventBlur:true的属性。在事件内用拓展公共方法onselect()控制指定表单

表单组件属性控制使用说明

对应控制表单属性的公共方法 Control(arr, obj) ,参数arr是要操作的表单数组,obj是对指定表单项的属性操作 例如:

let arr = [                      
                [ 
                  {type: "input",name: "userName",value: "",label: "用户名",span: 6,header:"用户管理基本信息",rule: [
                    {required: true,validator: this.validator.empty,trigger: "blur"},
                    {max: 50,message: "长度小于50个字符",trigger: "blur"},
                    {validator: this.cleanSpelChar,trigger: "blur"},
                    {validator: this.ifThere,trigger: "blur"}]
                  },
                  {type: "input",name: "nickName",value: "",label: "用户姓名",span: 6,rule: [
                    {required: true,validator: this.validator.empty,trigger: "blur"}]
                  }, 
                ]
              ]
	this.common.Control(arr,{
		'userName':{
			disabled:true
    	},
    	'nickName':{
			disabled:true
    	}
	})

目录结构介绍

|-- build                            // webpack配置文件
|-- config                           // 项目打包路径
|-- src                              // 源码目录
|   |-- assets                       // 引入外部文件
|   |-- common                       // 公共组件与方法文件夹
|       |-- components               // 公共组件文件夹	
|       |-- script                 	 // 公共方法文件夹(包含校验规则)
|   |-- modules   				     // 项目所在文件夹(可部署多个项目)
|   |-- |--platform					 // 例如:当前项目为平台
|   |-- |--|--api  					 // 接口文件
|   |-- |--|--components			 // 项目页面
|   |-- |--|--router				 //	路由
|   |-- |--|--script				 //	该项目特有js组件
|   |-- |--|--App.vue				 // 页面入口文件
|   |-- |--|--index.html			 // 入口html文件
|   |-- |--|--index.js				 // 程序入口文件,加载各种公共组件
|   |-- router                       // 路由
|	|-- store                        // 状态管理仓库
|   |-- App.vue                      // 页面入口文件
|   |-- main.js                      // 程序入口文件,加载各种公共组件
|-- .babelrc                         // ES6语法编译配置
|-- .editorconfig                    // 代码编写规格
|-- .gitignore                       // 忽略的文件
|-- element-variables.scss			 // 主题样式
|-- package.json                     // 项目及工具的依赖配置文件
|-- README.md                        // 说明