# 弹出选择 LookPopup
一种用于跨页面的数据选择组件,一般用于大量数据的选择。
# 弹出选择
弹出选择
弹出自定义的选择界面进行数据的选择
<title>弹出选择</title>
<describe>弹出自定义的选择界面进行数据的选择</describe>
<template>
<hc-look-popup
:popup-confirm="handleSelectPopupConfirm"
popup-size="small"
popup-title="用户选择"
type="lookpopup"
v-model="value"
:text.sync="text"
style="width: 300px;"
>
<div slot="popup">
<hc-grid
:data="data"
id-field="id"
@select-change="selectChange"
ref="select"
>
<hc-grid-columns>
<hc-grid-column label="text" field="text"></hc-grid-column>
<hc-grid-column label="value" field="value"></hc-grid-column>
</hc-grid-columns>
</hc-grid>
</div>
</hc-look-popup>
</template>
<script>
export default {
data: function() {
return {
value: '',
text: '',
data:[
{ text: '11', value: '1' },
{ text: '12', value: '2' },
{ text: '13', value: '3' },
{ text: '14', value: '4' }
],
selectData:{}
}
},
methods: {
handleSelectPopupConfirm: function() {
// 在线编码使用$util.deffer代替promise和$_.delay代替setTimeout
return new Promise((resolve, reject) => {
setTimeout(() => {
resolve(this.selectData)
}, 500)
})
},
selectChange: function (obj) {
this.selectData = obj.select
}
}
}
</script>
# 弹出选择(多选)
弹出选择(多选)
弹出自定义的选择界面进行数据的多选择
<title>弹出选择(多选)</title>
<describe>弹出自定义的选择界面进行数据的多选择</describe>
<template>
<hc-look-popup
:popup-confirm="handleSelectionPopupConfirm"
popup-size="small"
popup-title="用户选择"
type="lookpopup"
v-model="value"
:text.sync="text"
multiple
>
<div slot="popup">
<hc-grid
:data="data"
id-field="id"
@selection-change="selectionChange"
ref="selection"
multiple
>
<hc-grid-columns>
<hc-grid-column label="text" field="text"></hc-grid-column>
<hc-grid-column label="value" field="value"></hc-grid-column>
</hc-grid-columns>
</hc-grid>
</div>
</hc-look-popup>
</template>
<script>
export default {
data: function() {
return {
value: '',
text: '',
data:[
{ text: '11', value: '1' },
{ text: '12', value: '2' },
{ text: '13', value: '3' },
{ text: '14', value: '4' }
],
selectionData:[]
}
},
methods: {
handleSelectionPopupConfirm: function() {
// 在线编码使用$util.deffer代替promise和$_.delay代替setTimeout
return new Promise((resolve, reject) => {
setTimeout(() => {
resolve(this.selectionData)
}, 500)
})
},
selectionChange: function(obj) {
this.selectionData = obj.selection
}
}
}
</script>
# 弹出选择自定义宽高
弹出选择自定义宽高
弹出自定义的选择界面进行数据的选择
<title>弹出选择自定义宽高</title>
<describe>弹出自定义的选择界面进行数据的选择</describe>
<template>
<hc-look-popup
:popup-confirm="handleSelectPopupConfirm"
:popup-size="popupSize"
popup-title="用户选择"
type="lookpopup"
v-model="value"
:text.sync="text"
style="width: 300px;"
>
<div slot="popup">
<hc-grid
:data="data"
id-field="id"
@select-change="selectChange"
ref="select"
>
<hc-grid-columns>
<hc-grid-column label="text" field="text"></hc-grid-column>
<hc-grid-column label="value" field="value"></hc-grid-column>
</hc-grid-columns>
</hc-grid>
</div>
</hc-look-popup>
</template>
<script>
export default {
data: function() {
return {
value: '',
text: '',
data:[
{ text: '11', value: '1' },
{ text: '12', value: '2' },
{ text: '13', value: '3' },
{ text: '14', value: '4' }
],
selectData:{},
popupSize: { width: 600, height: 600}
}
},
methods: {
handleSelectPopupConfirm: function() {
// 在线编码使用$util.deffer代替promise和$_.delay代替setTimeout
return new Promise((resolve, reject) => {
setTimeout(() => {
resolve(this.selectData)
}, 500)
})
},
selectChange: function(obj) {
this.selectData = obj.select
}
}
}
</script>
# 属性及事件
# LookPopup属性
属性 | 说明 | 类型 | 可选值 | 默认值 |
---|---|---|---|---|
value | 值, 多选时为逗号分隔文本,支持v-model使用 | string | -- | -- |
placeholder | 为空提示 | string | -- | -- |
multiple | 是否多选 | boolean | -- | false |
popup-title | 弹出选择标题 | string | -- | -- |
popup-size | 弹出选择大小 | string 或 object | mini / small / normal / large / 或 {width: number, height: number} | normal |
popup-confirm | 选择框确认回调事件,支持返回异步对象或者对象 | function | -- | -- |
before-open | 打开弹窗前回调事件,支持返回异步对象或者对象 | function | -- | -- |
after-close | 关闭弹窗后回调事件,支持返回异步对象或者对象 | function | -- | -- |
viewable | 是否查看状态 | boolean | -- | false |
disabled | 是否禁用 | boolean | -- | false |
text-field | 组件文本取用字段名 | string | -- | text |
value-field | 组件值取用字段名 | string | -- | value |
# LookPopup插槽
名称 | 说明 |
---|---|
default | 弹出内容 |
# LookPopup事件
事件 | 说明 | 回调参数 |
---|---|---|
change | 用户选择值确认时触发 | {value,text,data} |
登录