Vue3/Vite下拉框数据动态绑定从数据库中(接口中)传出的数据 ...

打印 上一主题 下一主题

主题 982|帖子 982|积分 2948

本篇以vue3的语法举行编写

一、下拉框的部分代码

  1. <el-form-item label="选择上级名称">
  2.           <el-select
  3.             v-model="data.form.fid"
  4.             placeholder="请选择上级名称"
  5.             style="width: 100%;">
  6.             <el-option
  7.                 v-for="item in firstData"
  8.                 :key="item.id"
  9.                 :label="item.name"
  10.                 :value="item.id"></el-option>
  11.           </el-select>
  12. </el-form-item>
复制代码
二、<script setup>中的部分代码

   

  • 首先利用ref函数创建一个相应式的数据变量firstData,用于存储下拉框的选项
  • 利用onMounted钩子函数,在组件挂载时发送HTTP哀求获取数据。
  • 利用axios发送了一个GET哀求到你自己的项目接口,获取下拉框的选项数据。
  • 获取到数据后,将其赋值给firstData变量。
  • 在模板中利用v-for指令遍历firstData数组,为下拉框天生选项。
  记得将https://api.example.com/options替换为你现实的接口地点,并根据现实情况调整代码。
  1. <script setup>
  2. import {reactive,ref,onMounted} from "vue";
  3. import axios from 'axios';
  4. const data = reactive({
  5.     form:{},
  6.     fid:''
  7. })
  8. const firstData =ref([])
  9. onMounted(async () =>{
  10.   try {
  11.     const response = await axios.get('你自己的接口地址');
  12.     firstData.value = response.data.data;
  13.   }catch (error){
  14.     console.error(
  15.         '错误',error
  16.     )
  17.   }
  18. })
  19. </script>
复制代码
至于这句
  1. firstData.value = response.data.data;
复制代码
 为什么接收的是data.data,是由于我接口传出的参数是下面的这个情势
  1. {
  2.     "code": 2000,
  3.     "data": [
  4.         {
  5.             "id": 1,
  6.             "name": "安全文化展示",
  7.             "descr": "安全文化展示简介"
  8.         },
  9.         {
  10.             "id": 2,
  11.             "name": "施工安全作业体验",
  12.             "descr": "施工安全作业体验简介"
  13.         },
  14.         {
  15.             "id": 3,
  16.             "name": "安全警示教育",
  17.             "descr": "安全警示教育简介"
  18.         },
  19.         {
  20.             "id": 4,
  21.             "name": "事故警示体验",
  22.             "descr": "事故警示体验简介"
  23.         },
  24.         {
  25.             "id": 5,
  26.             "name": "总结培训评价",
  27.             "descr": "总结培训评价简介"
  28.         },
  29.         {
  30.             "id": 6,
  31.             "name": "测试数据",
  32.             "descr": "测试数据"
  33.         }
  34.     ],
  35.     "msg": "请求成功"
  36. }
复制代码
三、项目演示图



免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

用多少眼泪才能让你相信

金牌会员
这个人很懒什么都没写!
快速回复 返回顶部 返回列表