<!-- 物流公司 --> <van-field v-model="express" is-link readonly name="express" label="物流公司" placeholder="点击选择物流公司" @click="showExpress = true" /> <!-- 弹出层 --> <van-popup v-model:show="showExpress" position="bottom"> <van-picker :columns="expressList" @confirm="onConfirm" @cancel="showExpress = false" /> </van-popup>如何在点击选择物流公司时调用这个方法let expressName = async () => { var result = await POST({ url: '/index/expressname', }) for(var item of result.data) { expressList.push({ text: item.name, value: item.id }) } }
时间: 2024-02-14 13:29:36 浏览: 101
精辟的T-SQL语言
要在点击选择物流公司时调用 `expressName` 方法,你可以在 `van-field` 组件的 `@click` 事件中调用该方法。在调用之前,确保已经声明了 `expressList` 数组。
下面是一个示例代码:
```html
<van-field
v-model="express"
is-link
readonly
name="express"
label="物流公司"
placeholder="点击选择物流公司"
@click="handleExpressClick"
/>
```
```javascript
let expressList = [];
let handleExpressClick = async () => {
await expressName();
showExpress = true;
}
let expressName = async () => {
var result = await POST({
url: '/index/expressname',
})
for (var item of result.data) {
expressList.push({
text: item.name,
value: item.id
})
}
}
```
在上述代码中,我们在 `handleExpressClick` 方法中调用了 `expressName` 方法,并将其标记为异步函数。这样,在点击选择物流公司时,会先调用 `expressName` 方法获取物流公司列表,并将结果存储在 `expressList` 数组中。然后,设置 `showExpress` 属性为 `true`,以显示弹出层。
请确保在需要使用 `expressList` 和 `showExpress` 的地方正确引入和使用它们。
阅读全文