1.1.8 • Published 10 months ago

@binlun/manage-components v1.1.8

Weekly downloads
-
License
-
Repository
-
Last release
10 months ago

manage-components (后台业务组件集合)

概述

  • 基于规范的后台业务组件

组件安装

npm --registry=http://101.68.79.42:4873/ install @lishi/manage-components --save

使用示例

  1. 全局使用
// main.js
import '@lishi/manage-components/lib/style.css'
import { HelloWorld } form '@lishi/manage-components'
import Vue from 'vue'

Vue.use(HelloWorld);

<hello-world></hello-world>
  1. 非全局使用
import { HelloWorld } form '@lishi/manage-components'

export default {
  name: 'App',
  components: {
    HelloWorld
  }
}

...

<hello-world></hello-world>
  1. script setup
<script setup>
import { HelloWorld } form '@lishi/manage-components'
</script>

...

<hello-world></hello-world>

SearchForm组件接口文档

属性

属性类型必填默认值功能/备注
columnsArrayrequired[]表单项数组
spanNumberoption8栅格占位格数
defaultValueObjectoption{}设置整个表单初始值,权重高于column中单独设置的
defaultCollapsedBooleanoptiontrue默认是否收起
isCollapsedBooleanoptiontrue是否开启收起功能
linesCntToStartCollapseNumberoption3第几行开始收起
searchTextStringoption'查询'搜索按钮文案
resetTextStringoption'重置'重置按钮文案
hideResetBtnBooleanoptionfalse隐藏重置按钮
extraBtnVNodeoption-额外按钮(延期增加)
extraBtnSpanNumberoption-设置额外按钮,必须传入占位值,否则会影响布局(延期增加)
column属性
属性类型必填默认值功能/备注
titleString/Vnoderequired-表单项的 label
dataIndexStringrequired-表单的 name
formItemPropsObjectoption-表单项的属性
orderNumberoption-字段排序
formItemProps属性
属性类型必填默认值功能/备注
defaultValueStringoption-表单项的 初始值
typeStringoptioninput表单项类型,支持select、

Cascader 、datepicker等 | | options | object, object | option | - | type为select或cascader时的数据源 | | innerProps | Object | option | - | 表单项内部组件props,参考antdv组件 |

方法

注:以下方法需在获取到实例后,onMounted及之后调用(DOM 元素将在初始渲染后分配给 ref)

  • getFormValues(通过ref来获取实例后调用,手动获取整个表单值): (params: object) => void
  • setFormValues(通过ref来获取实例后调用,手动填写整个表单值): (params: object) => void
  • resetFormValues(通过ref来获取实例后调用,手动重置整个表单值): () => void

事件

  • onReset(点击重置后的回调函数,返回表单内容): (params: object) => void
  • onSubmit(点击查询后的回调函数,返回表单内容): (params: object) => void

SideBarMenu 组件接口文档

属性

属性类型必填默认值功能/备注
themelight&#124;darkoptionlight主题颜色
routersany[]option[]路由信息
collapsedbooleanoptionfalse当前收缩状态, 默认为false
handleClickItem(path: string) => voidoption(path) => {}点击菜单项时的回调方法

其他未覆盖的属性和方法可直接传入并且参考ant-design-vue/menu的文档

插槽(slot)

beforeMenu 在菜单上方的操作

LocationSelect 组件接口文档

属性

属性类型必填默认值功能/备注
value(v-model)stringrequired-纬度信息, 格式(经度,纬度)(longitude,latitude)例如 120,30
address(v-model)stringoption-地址信息
aMapKeystringoption-高德地图应用的 key
aMapSecuritystringoption-高德地图应用的 securityJsCode, 需要与key配套使用
aMapInstanceanyoptionnull高德地图实例传入此项后无需传入key和密钥 初始化时需要AMap.AutoComplete,AMap.PlaceSearch,AMap.Geocoder plugin
modelOptionsObjectoption{width: 80%}modal弹窗的属性
locationStorageKeystringoption-保存上一次选择的经纬度数据的的键(存储在localStorage中),若置空则为不使用此功能
showSearchbooleanoptionfalse是否隐藏左上角搜索框
mapHeightstringoption600px地图高度
defaultCenternumber[]option[116.397428, 39.90923]默认中心位置

事件

事件

名称说明回调参数
change点击确定触发change事件({location: string, address: string}) => void

MapSelect 组件接口文档

属性

属性类型必填默认值功能/备注
value(v-model)stringrequired-经纬度信息, 格式(经度,纬度)(longitude,latitude)例如 120,30
addressstringoption-地址信息
aMapKeystringoption-高德地图应用的 key
aMapSecuritystringoption-高德地图应用的 securityJsCode, 需要与key配套使用
aMapInstanceanyoptionnull高德地图实例传入此项后无需传入key和密钥 初始化时需要AMap.AutoComplete,AMap.PlaceSearch,AMap.Geocoder plugin
locationStorageKeystringoption-保存上一次选择的经纬度数据的的键(存储在localStorage中), 若置空则为不使用此功能
showSearchbooleanoptionfalse是否隐藏左上角搜索框
mapHeightstringoption600px地图高度
mapWidthstringoption600px地图宽度
defaultCenternumber[]option[116.397428, 39.90923]默认中心位置

事件

名称说明回调参数
change点击地图时触发change事件({latitude: number,longitude: number , address: string}) => void

方法

通过ref获取到组件的实例, 调用方法

<template>
  <map-select ref="mapSelectRef"></map-select>
</template>
<script>
const mapSelectRef = ref(null)
// 需要在组件mounted以后才能使用
mapSelectRef.value.init()
mapSelectRef.value.reset()
</script>
名称说明
init初始化地图, 重新初始化地图的中心点以及缩放比例(在执行此逻辑前内部会执行一次reset方法)
reset重置地图数据(包括搜索数据, 定位数据)

NavTop 组件接口文档

属性

属性类型必填默认值功能备注
logoSrcStringfalse默认公司logo后台logo
subTitleStringfalse""副标题
menuIMenu[]false[]
activeString | Numberfalse''高亮的key
commandListarraytrue[]用户操作如登出
userNameStringrequired''用户名称
avatarStringfalse占位图片用户头像
countNumberfalse待办消息数量
backgroundColorStringfalse#1890FF;背景色
backgroundImageStringfalse''背景图片

menus属性

属性类型必填功能
keyString|numberrequired唯一key
nameStringrequired菜单标题
pathStringfalse路径
onActiveChangeactive值改变的时候, 会执行里面的action函数

commandList属性

属性类型必填功能
keystringrequired唯一key
namestringrequired显示的名称
actionFunctionrequired点击对应名称触发的函数

事件

名称说明回调参数
onBadgeChick点击徽标的事件

开发与调试

  • 运行 npm install --registry=http://101.68.79.42:4873/ 安装依赖
  • 运行 npm start

目录结构

├── index.js ----------------------  npm入口文件,新增组件时需要在这里添加
├── lib ---------------------------  打包代码
├── examples ----------------------  示例代码
    ├── assets --------------------  静态资源目录
    ├── main.ts -------------------  示例入口
    ├── App.vue -------------------  示例实现
├── public ------------------------  html上引用的公共资源
└── src ---------------------------  源码目录
    ├── components ----------------  组件目录
        ├── helloworld ------------  具体的组件
        ├── helloworld2 -----------  具体的组件
├── index.hml ---------------------  页面入口

打包

  • 运行 npm run build 来打包
  • bundle的入口在vite.build.config.ts的entry字段中配置
  • 打包以后生成lib/bundle.es.js和lib/bundle.umd.js

发布