Merge branch 'master' of https://github.com/iview/iview into carousel
This commit is contained in:
commit
538b964bf9
5 changed files with 94 additions and 128 deletions
|
@ -1,14 +1,17 @@
|
||||||
<template>
|
<template>
|
||||||
<div :class="classes" v-clickoutside="handleClose">
|
<div :class="classes" v-clickoutside="handleClose">
|
||||||
|
<div :class="[prefixCls + '-rel']" @click="toggleOpen">
|
||||||
|
<slot>
|
||||||
<i-input
|
<i-input
|
||||||
readonly
|
readonly
|
||||||
:disabled="disabled"
|
:disabled="disabled"
|
||||||
:value.sync="displayRender"
|
:value.sync="displayRender"
|
||||||
:size="size"
|
:size="size"
|
||||||
:placeholder="placeholder"
|
:placeholder="placeholder"></i-input>
|
||||||
@on-focus="onFocus"></i-input>
|
|
||||||
<Icon type="ios-close" :class="[prefixCls + '-arrow']" v-show="showCloseIcon" @click.stop="clearSelect"></Icon>
|
<Icon type="ios-close" :class="[prefixCls + '-arrow']" v-show="showCloseIcon" @click.stop="clearSelect"></Icon>
|
||||||
<Icon type="arrow-down-b" :class="[prefixCls + '-arrow']"></Icon>
|
<Icon type="arrow-down-b" :class="[prefixCls + '-arrow']"></Icon>
|
||||||
|
</slot>
|
||||||
|
</div>
|
||||||
<Dropdown v-show="visible" transition="slide-up">
|
<Dropdown v-show="visible" transition="slide-up">
|
||||||
<div>
|
<div>
|
||||||
<Caspanel
|
<Caspanel
|
||||||
|
@ -125,6 +128,13 @@
|
||||||
handleClose () {
|
handleClose () {
|
||||||
this.visible = false;
|
this.visible = false;
|
||||||
},
|
},
|
||||||
|
toggleOpen () {
|
||||||
|
if (this.visible) {
|
||||||
|
this.handleClose();
|
||||||
|
} else {
|
||||||
|
this.onFocus();
|
||||||
|
}
|
||||||
|
},
|
||||||
onFocus () {
|
onFocus () {
|
||||||
this.visible = true;
|
this.visible = true;
|
||||||
if (!this.value.length) {
|
if (!this.value.length) {
|
||||||
|
|
|
@ -58,7 +58,7 @@
|
||||||
this.hidden = !new RegExp(val, 'i').test(this.searchLabel);
|
this.hidden = !new RegExp(val, 'i').test(this.searchLabel);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
ready () {
|
compiled () {
|
||||||
this.searchLabel = this.$el.innerHTML;
|
this.searchLabel = this.$el.innerHTML;
|
||||||
},
|
},
|
||||||
events: {
|
events: {
|
||||||
|
|
|
@ -2,9 +2,13 @@
|
||||||
@cascader-item-prefix-cls: ~"@{css-prefix}cascader-menu-item";
|
@cascader-item-prefix-cls: ~"@{css-prefix}cascader-menu-item";
|
||||||
|
|
||||||
.@{cascader-prefix-cls} {
|
.@{cascader-prefix-cls} {
|
||||||
position: relative;
|
//position: relative;
|
||||||
line-height: normal;
|
line-height: normal;
|
||||||
|
|
||||||
|
&-rel{
|
||||||
|
position: relative;
|
||||||
|
}
|
||||||
|
|
||||||
.@{css-prefix}input{
|
.@{css-prefix}input{
|
||||||
display: block;
|
display: block;
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
|
|
|
@ -1,18 +1,15 @@
|
||||||
<template>
|
<template>
|
||||||
<Cascader :data="data" :value.sync="value" change-on-select></Cascader>
|
{{ text }}
|
||||||
|
<Cascader :data="data" @on-change="handleChange">
|
||||||
|
<a href="javascript:void(0)">选择</a>
|
||||||
|
</Cascader>
|
||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
export default {
|
export default {
|
||||||
data () {
|
data () {
|
||||||
return {
|
return {
|
||||||
value: [],
|
text: '未选择',
|
||||||
data: []
|
data: [{
|
||||||
}
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
updateData () {
|
|
||||||
setTimeout(() => {
|
|
||||||
this.data = [{
|
|
||||||
value: 'beijing',
|
value: 'beijing',
|
||||||
label: '北京',
|
label: '北京',
|
||||||
children: [
|
children: [
|
||||||
|
@ -39,7 +36,7 @@
|
||||||
children: [
|
children: [
|
||||||
{
|
{
|
||||||
value: 'fuzimiao',
|
value: 'fuzimiao',
|
||||||
label: '夫子庙'
|
label: '夫子庙',
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
@ -49,24 +46,22 @@
|
||||||
children: [
|
children: [
|
||||||
{
|
{
|
||||||
value: 'zhuozhengyuan',
|
value: 'zhuozhengyuan',
|
||||||
label: '拙政园'
|
label: '拙政园',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
value: 'shizilin',
|
value: 'shizilin',
|
||||||
label: '狮子林'
|
label: '狮子林',
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
]
|
],
|
||||||
}];
|
}]
|
||||||
setTimeout(() => {
|
|
||||||
this.value = ['beijing', 'tiantan'];
|
|
||||||
}, 1000);
|
|
||||||
}, 1000);
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
ready () {
|
methods: {
|
||||||
this.updateData();
|
handleChange (value, selectedData) {
|
||||||
|
this.text = selectedData.map(o => o.label).join(', ');
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
|
@ -1,67 +1,24 @@
|
||||||
<template>
|
<template>
|
||||||
<i-button type="primary" @click="modal1 = true">i-selelct加入width样式</i-button>
|
<i-select :model.sync="model9" style="width:200px">
|
||||||
<i-button type="primary" @click="modal2 = true">i-selelct没有加入width样式</i-button>
|
<i-option value="beijing" label="北京市">
|
||||||
|
<span>北京</span>
|
||||||
<Modal
|
<span style="float:right;color:#ccc">Beiing</span>
|
||||||
:visible.sync="modal1"
|
</i-option>
|
||||||
title="普通的Modal对话框标题">
|
<i-option value="shanghai" label="上海市">
|
||||||
<i-select :model.sync="model1" :style="modalStyle">
|
<span>上海</span>
|
||||||
<i-option v-for="item in cityList" :value="item.value">{{ item.label }}</i-option>
|
<span style="float:right;color:#ccc">ShangHai</span>
|
||||||
|
</i-option>
|
||||||
|
<i-option value="shenzhen" label="深圳市">
|
||||||
|
<span>深圳</span>
|
||||||
|
<span style="float:right;color:#ccc">ShenZhen</span>
|
||||||
|
</i-option>
|
||||||
</i-select>
|
</i-select>
|
||||||
</Modal>
|
|
||||||
|
|
||||||
<Modal
|
|
||||||
:visible.sync="modal2"
|
|
||||||
title="普通的Modal对话框标题">
|
|
||||||
<i-select :model.sync="model1" :style="modalStyle">
|
|
||||||
<i-option v-for="item in cityList" :value="item.value">{{ item.label }}</i-option>
|
|
||||||
</i-select>
|
|
||||||
</Modal>
|
|
||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
export default {
|
export default {
|
||||||
data () {
|
data () {
|
||||||
return {
|
return {
|
||||||
modal1: false,
|
model9: 'shanghai'
|
||||||
modal2: false,
|
|
||||||
modalStyle: '',
|
|
||||||
cityList: [
|
|
||||||
{
|
|
||||||
value: 'beijing',
|
|
||||||
label: '北京市'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
value: 'shanghai',
|
|
||||||
label: '上海市'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
value: 'shenzhen',
|
|
||||||
label: '深圳市'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
value: 'hangzhou',
|
|
||||||
label: '杭州市'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
value: 'nanjing',
|
|
||||||
label: '南京市'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
value: 'chongqing',
|
|
||||||
label: '重庆市'
|
|
||||||
}
|
|
||||||
],
|
|
||||||
model1: ''
|
|
||||||
}
|
|
||||||
},
|
|
||||||
computed: {
|
|
||||||
modalStyle: function(){
|
|
||||||
let s = ""
|
|
||||||
if (this.modal1)
|
|
||||||
s = "width: 200px"
|
|
||||||
if (this.modal2)
|
|
||||||
s = ""
|
|
||||||
return s
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue