npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

vesper-ui

v1.3.24

Published

mz-ui

Downloads

36

Readme

引入组件库

npm i --save @mizlicai/mz-ui
import mzui from '@mizlicai/mz-ui'
import '@mizlicai/mz-ui/dist/css/mz-ui.css'

Vue.use(mzui) // 注册组件到全局

组件使用说明

loading

在屏幕中间生成一个loading状态

this.$loading.open(String) // 打开loading 可加文字
this.$loading.close() // 关闭loading

toast

在屏幕中间生成一个白色字黑色半透明背景提示

this.$toast.open(String) // 生成toast 可加文字
this.$toast.open({text: '文字', icon: '是否加icon', iconSize: '同icon控件size', time: '指定时间消失'})
this.$toast.close() // 关闭toast,非手动关闭情况下 默认2秒自动消失

alert

在屏幕中间生成一个带标题/文字/1(确定)到2个按钮(确定,取消)的提示框

cmd mode:

this.$alert({
  title: String, // 标题
  text: Array || String, // 文字
  okTxt: String, // 确定按钮文字,默认“确定”
  quitTxt: String, // 取消按钮文案,默认“取消”
  btns: Number, // 几个按钮,目前支持1|2个按钮,默认1个
  okCb: Function, // 确定的回调
  quitCb: Function // 取消的回调
  type: String // 样式类型 默认风格或ios风格
  closeBtn: Boolean || String // 是否有关闭按钮 若有 内容为"bottom"关闭按钮则在底部 默认在右上角
  mode: String // 生成模式 template:模版模式 cmd:命令模版
})

template mode:

<v-alert ref="alert" title="" text="" okTxt="" quitTxt="" btns="" type="" closeBtn @ok="" @quit=""><slot></slot></v-alert>

template mode 调用:

this.$refs.alert.open()

button

生成一个可点击或不可点击的可定制多种样式的按钮

example:

<v-button type="" size="" icon="" href="" disabled loading inline circle @click="">button</v-button>

| 属性 | 说明 | 类型 | 默认值 | | --- | --- | --- | --- | | type | 按钮类型,可选值为primary/success/warning/error | string | - | | size | 按钮大小,可选值为xl/lg/md/sm/xs | string | md | | href | 可添加跳转链接 | string | javascript:; | | icon | 添加icon按钮,暂无 | string | - | | loading | 是否加载中(true则显示加载icon) | boolean | false | | disabled | 是否不可用 | boolean | false | | inline | 是否行内元素 | boolean | false | | circle | 是否全圆角 | boolean | false | | onclick | 点击事件 | function | - |

icon

生成一个基于iconfont的icon图标

example:

<v-icon icon="" type="" size=""></v-icon>

| 属性 | 说明 | 类型 | 默认值 | | --- | --- | --- | --- | | type | icon颜色类型,可选值为normal/light/default/success/warning/error | string | normal | | size | icon大小,可选值为xl/lg/md/sm/xs | string | md | | icon | 对应的icon图标 | string | - |

input

生成一个可输入或不可输入内容的可定制多种样式的输入框

example:

<v-input type="" status="" size="" value="" label="" maxlength="" placeholder="" btn="" icon="" enterSubmit focused disabled loading inline circle number @click="" @blur="" @focus="" @input="" @enter="" @submit=""></v-input>

| 属性 | 说明 | 类型 | 默认值 | | --- | --- | --- | --- | | type | input类型,可选值为text/password/number/tel/search | string | text | | btnType | input附带的button类型,可选值为normal/default/primary/success/warning/error/custom | string | default | | btn | 是否有附带button,btn显示的文字 | string | - | | status | input状态,可选值为success/warning/error | string | - | | size | input大小,可选值为xl/lg/md/sm/xs | string | md | | value | input的value | string | - | | icon | input的icon | string | - | | label | input的label | string | - | | maxlength | input的最大长度 | string,number | - | | inline | label是否在行内 | boolean | false | | placeholder | input的placeholder | string | - | | circle | 是否全圆角 | boolean | false | | focused | 是否获取焦点 | boolean | false | | disabled | 是否不可用 | boolean | false | | number | 是否校验输入是number | boolean | false | | enterSubmit | 是否enter事件触发提交| boolean | false | | onclick | 点击事件 | function | - | | onblur | 失焦事件 | function | - | | onfocus | 获得焦点事件 | function | - |

nav

生成可定制的导航

example:

<v-nav title="" backTxt="" closeTxt="" optionTxt="" @backCb="" @closeCb="" optionCb="" canClose canBack border>
  <div slot="right"></div> // 定制右侧内容
</v-nav>

| 属性 | 说明 | 类型 | 默认值 | | --- | --- | --- | --- | | title | 导航标题 | string | - | | backTxt | 导航返回的文字 | string | - | | closeTxt | 导航关闭的文字 | string | 关闭 | | optionTxt | 导航右侧的文字 | string | - | | backCb | 点击返回的回调 | function | - | | closeCb | 点击关闭的回调 | function | - | | optionCb | 点击右侧的回调,如自定义则需自行绑定事件 | function | - | | canBack | 是否可以返回 | boolean | false | | canClose | 是否可以关闭 | boolean | false | | border | 是否有底部边框 | boolean | false |

tabs

生成tab标签页

example:

<v-tabs v-model="" @tabsClick="" @tabsChange="">
  <v-tabs-pane label="" name="">
    <div></div>
  </v-tabs-pane>
</v-tabs>

| 属性 | 说明 | 类型 | 默认值 | | --- | --- | --- | --- | | tabsClick | 点击tab的标题回调 | function | - | | tabsChange | tab切换之后的回调 | function | - |

tabs-pane

生成tab标签页的选项卡

| 属性 | 说明 | 类型 | 默认值 | | --- | --- | --- | --- | | label | 选项卡的标题 | string | - | | name | 选项卡的名字,用作标识选项卡,如未指定,则会使用选项卡的index来标识 | string | - |

item-group

生成一个item的列表

example:

 <v-item-group title="" align="left||right" type="radio||checkbox" v-model="" @itemChange="">
  <v-icon icon="success" size="sm" slot="title"></v-icon> // title旁的内容插槽
  <v-item value="1" label="" caption="">
  <v-icon icon="success" class="icon" slot="left"></v-icon> // item 主题内容的旁的内容插槽 有left/content/right3个类型 分别对应主体内容的3个位置
  </v-item>
</v-item-group>

| 属性 | 说明 | 类型 | 默认值 | | --- | --- | --- | --- | | title | group的标题 | string | - | | type | group的形式,默认无,可为radio/checkbox模式,通过v-model获取返回值,数据为item设置的value值,checkbox返回值为array | string | - | | align | 配合type使用,可设置type的位置left/right | string | - | | itemChange | value变化时触发 | functon | - |

item

生成一个item

| 属性 | 说明 | 类型 | 默认值 | | --- | --- | --- | --- | | label | item的标题 | string | - | | caption | item的补充信息 | string | - | | value | item的值 | string | - |

agree-item

生成一个agree的item

example:

<v-agree-item v-model="" @itemChange="">xxx<a href="https://www.xxx.com/">xxx</a></v-agree-item>

| 属性 | 说明 | 类型 | 默认值 | | --- | --- | --- | --- | | itemChange | value变化时触发 | functon | - |

steps

生成一个步骤的列表

example:

 <v-steps :current="" direction="horizontal||vertical(default)"  type="icon||number(default)">
  <v-step label="1" caption="step1"></v-step>
  <v-step label="2" caption="step2"></v-step>
  <v-step status="error" label="3" caption="step3"></v-step>
  <v-step label="4" caption="step4"></v-step>
</v-steps>

| 属性 | 说明 | 类型 | 默认值 | | --- | --- | --- | --- | | current | 当前的步骤,从1开始计数 | number | 1 | | direction | 排列模式,horizontal 横向/vertical(default)竖向 | string | - | | type | 图标的模式 icon 图标/number(default)) 数字 | string | - |

step

生成一个步骤项

| 属性 | 说明 | 类型 | 默认值 | | --- | --- | --- | --- | | label | step的标题 | string | - | | caption | step的补充信息 | string | - | | status | step的状态,目前只有error,配合父级type="icon"使用 | string | - |

开发指引

组件文件结构

-组件名
  -src
    -模版文件/css/图片
  -index.js // index.js作为统一出口

样式

公共样式在style文件夹统一定义 组件样式一般写在模版文件.vue中或在组件src文件夹自行定义

目前采用sass语法,单位使用px

css-loader已添加px2rem,在标准设计稿750px宽度情况下,可直接按设计稿px设置尺寸,px会自动编译为rem

rem方案为:设计稿基准宽度750px/基准font-size单位为100,即375px手机的html标签的font-size50px