You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
100 lines
1.6 KiB
100 lines
1.6 KiB
3 years ago
|
<!--
|
||
|
* @Author: ch
|
||
|
* @Date: 2022-03-29 16:05:06
|
||
|
* @LastEditors: ch
|
||
|
* @LastEditTime: 2022-03-29 16:20:03
|
||
|
* @Description: file content
|
||
|
-->
|
||
|
<template>
|
||
|
<view>
|
||
|
<UiCell title="所在区域" @click="show = true">
|
||
|
<template slot="value">
|
||
|
<input class="cityInput" disabled value="我的" placeholder="请选择省市区" />
|
||
|
</template>
|
||
|
</UiCell>
|
||
|
<u-picker
|
||
|
:show="show"
|
||
|
keyName="label"
|
||
|
:columns="data"
|
||
|
@cancel="show = false"
|
||
|
@change="changeRegion"
|
||
|
@confirm="onConfirm"
|
||
|
/>
|
||
|
</view>
|
||
|
</template>
|
||
|
<script>
|
||
|
import UiCell from "./UiCell";
|
||
|
export default {
|
||
|
components: { UiCell },
|
||
|
props: ["value"],
|
||
|
data() {
|
||
|
return {
|
||
|
show: false,
|
||
|
data: [
|
||
|
[
|
||
|
{
|
||
|
label: "北京",
|
||
|
id: 11000000,
|
||
|
children: [
|
||
|
{
|
||
|
label: "东城",
|
||
|
id: 11100000,
|
||
|
},
|
||
|
{
|
||
|
label: "西城",
|
||
|
id: 11200000,
|
||
|
},
|
||
|
],
|
||
|
},
|
||
|
{
|
||
|
label: "湖南",
|
||
|
id: 43000000,
|
||
|
children: [
|
||
|
{
|
||
|
label: "长沙",
|
||
|
id: 11100000,
|
||
|
},
|
||
|
{
|
||
|
label: "邵阳",
|
||
|
id: 11200000,
|
||
|
},
|
||
|
],
|
||
|
},
|
||
|
],
|
||
|
[
|
||
|
{
|
||
|
label: "东城",
|
||
|
id: 11100000,
|
||
|
},
|
||
|
{
|
||
|
label: "西城",
|
||
|
id: 11200000,
|
||
|
},
|
||
|
],
|
||
|
],
|
||
|
};
|
||
|
},
|
||
|
computed:{
|
||
|
valueText(){
|
||
|
// this.va
|
||
|
},
|
||
|
|
||
|
},
|
||
|
methods: {
|
||
|
changeCity(val) {
|
||
|
this.data = [this.options[0],val.value[0].children]
|
||
|
},
|
||
|
confirm(value) {
|
||
|
this.$emit('input', value)
|
||
|
this.$emit('change', value)
|
||
|
},
|
||
|
},
|
||
|
};
|
||
|
</script>
|
||
|
<style lang="scss" scoped>
|
||
|
.cityInput{
|
||
|
flex: 1;
|
||
|
font-size: 28rpx;
|
||
|
padding-left: 40rpx;
|
||
|
}
|
||
|
</style>
|