vue 输入表单库,在开发项目时节省大量时间

1. Vue Select(制作表单)

官方地址:

完整的文档和示例

//安装
yarn add vue-select
//或
npm install vue-select
//引入
import Vue from "vue";
import vSelect from "vue-select";

Vue.component("v-select", vSelect);

在这里插入图片描述
在这里插入图片描述

2. Vue Input Tag(向表单添加标签)

官方地址:

//安装
yarn add vue-input-tag
//或
npm install vue-input-tag --save
//引入
import InputTag from 'vue-input-tag'
Vue.component('input-tag', InputTag)
//用法
<input-tag v-model="tags"></input-tag>

在这里插入图片描述
在这里插入图片描述

3.Vue Dropdowns(Vue 下拉菜单)

官方地址:

完整的文档和示例

//安装
yarn add vue-dropdowns
//或
npm install vue-dropdowns
//用例
<dropdown class="my-dropdown-toggle"
          :options="arrayOfObjects" 
          :selected="object" 
          v-on:updateOption="methodToRunOnSelect" 
          :placeholder="'Select an Item'"
          :closeOnOutsideClick="boolean">
</dropdown>

<script>
//引入
import dropdown from 'vue-dropdowns';

export default {
        data() {
          return {
            arrayOfObjects: [],
            object: {
              name: 'Object Name',
            }
          }
        },

        components: {
            'dropdown': dropdown,
        },

        methods: {
          methodToRunOnSelect(payload) {
            this.object = payload;
          }
        }
      }
</script>

<style scoped>
.my-dropdown-toggle {
  border-radius: 5px;

  ::v-deep .dropdown-toggle {
    color: tomato;
    font-size: 25px;
    font-weight: 800;
  }

  ::v-deep .dropdown-toggle-placeholder {
    color: #c4c4c4;
  }
}
</style>

在这里插入图片描述

4. Vue Color(颜色选择添加到表单中)

官方地址:

//安装
npm install vue-color
import { Photoshop } from 'vue-color'

new Vue({
  components: {
    'photoshop-picker': Photoshop
  }
})
//用法
var colors = {
  hex: '#194d33',
  hex8: '#194D33A8',
  hsl: { h: 150, s: 0.5, l: 0.2, a: 1 },
  hsv: { h: 150, s: 0.66, v: 0.30, a: 1 },
  rgba: { r: 25, g: 77, b: 51, a: 1 },
  a: 1
}
// 或
var colors = '#194d33'
// 或
var colors = '#194D33A8'
// 或
var colors = { h: 150, s: 0.66, v: 0.30 }
// 或
var colors = { r: 255, g: 0, b: 0 }
// 等等...

new Vue({
  el: '#app',
  components: {
    'material-picker': material,
    'compact-picker': compact,
    'swatches-picker': swatches,
    'slider-picker': slider,
    'sketch-picker': sketch,
    'chrome-picker': chrome,
    'photoshop-picker': photoshop
  },
  data () {
    return {
      colors
    }
  }
})

在这里插入图片描述

5. VueJS DatePicker(日期选择器)

官方地址:

//安装
npm install vuejs-datepicker --save
//引入
import Datepicker from 'vuejs-datepicker';

export default {
  // ...
  components: {
    Datepicker
  }
  // ...
}
//用法
var colors = {
  hex: '#194d33',
  hex8: '#194D33A8',
  hsl: { h: 150, s: 0.5, l: 0.2, a: 1 },
  hsv: { h: 150, s: 0.66, v: 0.30, a: 1 },
  rgba: { r: 25, g: 77, b: 51, a: 1 },
  a: 1
}
// 或
var colors = '#194d33'
// 或
var colors = '#194D33A8'
// 或
var colors = { h: 150, s: 0.66, v: 0.30 }
// 或
var colors = { r: 255, g: 0, b: 0 }
// 等等...

new Vue({
  el: '#app',
  components: {
    'material-picker': material,
    'compact-picker': compact,
    'swatches-picker': swatches,
    'slider-picker': slider,
    'sketch-picker': sketch,
    'chrome-picker': chrome,
    'photoshop-picker': photoshop
  },
  data () {
    return {
      colors
    }
  }
})

在这里插入图片描述

6. Vue Switches(切换开关)

官方地址:

完整的文档和示例

//安装
npm install vue-switches --save
//引入
import Switches from 'vue-switches';

new Vue({
    components: {
        Switches
    },
    data () {
        return {
            enabled: false
        }
    }
};
//使用
<switches v-model="enabled"></switches>
Prop描述
label始终显示打开或关闭的静态标签。
text-enabled启用时显示的文本。
text-disabled禁用时显示的文本。
theme使用哪个主题。
color使用哪种颜色。
type-bold更大的风格。
emit-on-mount默认情况下,当组件挂载时会发出“更改”事件。要禁用此功能,请将其设置为 false。

在这里插入图片描述

7. Vue Dropzone(拖放文件上传)

官方地址:

完整的文档和示例

//安装
npm install vue2-dropzone
//引入使用
<vue-dropzone ref="myVueDropzone" id="dropzone" :options="dropzoneOptions"></vue-dropzone>
import vue2Dropzone from 'vue2-dropzone'
import 'vue2-dropzone/dist/vue2Dropzone.min.css'
export default {
  name: 'app',
  components: {
    vueDropzone: vue2Dropzone
  },
  data: function () {
    return {
      dropzoneOptions: {
          url: 'https://httpbin.org/post',
          thumbnailWidth: 150,
          maxFilesize: 0.5,
          headers: { "My-Awesome-Header": "header value" }
      }
    }
  }
}

在这里插入图片描述

8. Vue Circle Sliders(圆形滑块)

官方地址:

//安装
npm install --save vue-circle-slider
//引入
import Vue from 'vue'
import VueCircleSlider from 'vue-circle-slider'

Vue.use(VueCircleSlider)
//用例

//插件将注册一个带有名称的全局组件
<circle-slider v-model="sliderValue"></circle-slider>

//自定义一些属性:
<circle-slider
  v-model="sliderValue"
  :side="150"
  :min="0"
  :max="10000"
  :step-size="100"
  :circle-width-rel="20"
  :progress-width-rel="10"
  :knob-radius="10"
></circle-slider>

用法功能基于 svg 的视图:
      通过绑定v-model
      定义最小值和最大值
      定义步长
      动画,同时按圈点击更新为新值
      触控设备支持 ( touchmove)
      尺寸定制:精确和相对定义
      颜色定制

Props类型默认描述
sideNumber100svg 正方形边的大小(以 px 为单位)
minNumber0最小值
maxNumber100最大值
stepSizeNumber1值之间的差距
circleColorString#334860滑块圆周的颜色
progressColorString#00be7e进度曲线的颜色
knobColorString#00be7e旋钮颜色
knobRadiusNumbernull精确的旋钮半径(以 px 为单位)
knobRadiusRelNumber7相对旋钮半径。以 px 为单位的半径值将计算为:(side/2) / knobRadiusRel
circleWidthNumbernull圆的精确宽度(以 px 为单位)
circleWidthRelNumber20相对圆的宽度。以 px 为单位的宽度值将计算为:(side/2) / circleWidthRel
progressWidthNumbernull精确的进度曲线宽度(以 px 为单位)
progressWidthRelNumber10相对进度曲线宽度。以 px 为单位的宽度值将计算为(side/2) / progressWidthRel

在这里插入图片描述
在这里插入图片描述

9. Vue Phone Number(电话号码输入)

官方地址:

//安装
yarn add vue-phone-number-input
//或
npm i --save vue-phone-number-input
//引入
import VuePhoneNumberInput from 'vue-phone-number-input';
import 'vue-phone-number-input/dist/vue-phone-number-input.css';

Vue.component('vue-phone-number-input', VuePhoneNumberInput);
//用例
<VuePhoneNumberInput v-model="yourValue" />

Props API:

PropsType必须默认
v-modelString/Inttrue-
idStringfalseVuePhoneNumberInput
colorString HEXnodogderblue
valid-colorString HEXnoyellowgreen
error-colorString HEXnoorangered
sizeStringno
default-country-code (1)Stringnonull
preferred-countries (2)Array nonull
ignored-countriesArraynonull
only-countriesArraynonull
no-validator-stateBooleannofalse
no-flagsBooleannofalse
disabledBooleannofalse
darkBooleannofalse
dark-colorString (hex)no#424242
requiredBooleannofalse
errorBooleannofalse
clearableBooleannofalse
loader (3)Booleannofalse
translations (4)Objectnonull
countries-height (5)Numberno30
no-use-browser-locale (6)Booleannofalse
fetch-country (7)Booleannofalse
no-country-selector (8)Booleannofalse
border-radiusNumberno4
show-code-on-listBooleannofalse
no-exampleBooleannofalse

在这里插入图片描述
在这里插入图片描述

特殊 react

官方地址:

npm install react-tagsinput --save
//例子
import TagsInput from 'react-tagsinput'

import 'react-tagsinput/react-tagsinput.css' // If using WebPack and style-loader.

class Example extends React.Component {
  constructor() {
    super()
    this.state = {tags: []}
  }

  handleChange(tags) {
    this.setState({tags})
  }

  render() {
    return <TagsInput value={this.state.tags} onChange={::this.handleChange} />
  }
}
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

半生过往

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值