当前位置: 首页 > news >正文

js:根据后端返回的数组取出每一个数组的keyword字段然后拼接成一个逗号分隔的字符串

问:

现在有一个el-select,

后端接口返回数据为keyword:'xxx',referenceNum:1,tagId:'132sf32fasdfaf'组成的数组,

现在select是多选,

但是但我选择多个下拉框选项后,后端需要前端返回的数据tagIds字段需要时一个字符串,比方:'132sf32fasdfaf,132sf32fasdfaf,132sf32fasdfaf'这样的字符串,中间逗号要是英文的逗号请问怎么写?我使用的是vue3的setup语法

[
    {
        'keyword': 'sdfafdaasd8164561',
        'xxx': 'xxx',
        'xxx': 'xxx',
    },
    {
        'keyword': 'sdfafdaasd8164561',
        'xxx': 'xxx',
        'xxx': 'xxx',
    },
    {
        'keyword': 'sdfafdaasd8164561',
        'xxx': 'xxx',
        'xxx': 'xxx',
    },
    {
        'keyword': 'sdfafdaasd8164561',
        'xxx': 'xxx',
        'xxx': 'xxx',
    },
    {
        'keyword': 'sdfafdaasd8164561',
        'xxx': 'xxx',
        'xxx': 'xxx',
    },
]
假设当前选中了五个多选el-select

回答:

你可以使用 el-select 的 @change 事件来监听选项的变化,然后将选中的选项的 tagId 提取出来并拼接成一个字符串。

如果 selectedTags 是一个字符串而不是数组,那么你需要先将其转换为数组,然后再进行处理。以下是修改后的代码:

<template>
  <div>
    <el-select
      v-model="selectedTags"
      multiple
      @change="handleChange"
      placeholder="请选择"
    >
      <el-option
        v-for="item in options"
        :key="item.tagId"
        :label="item.keyword"
        :value="item.tagId"
      ></el-option>
    </el-select>
  </div>
</template>

<script setup>
import { ref } from 'vue';

const options = ref([
  { keyword: 'xxx1', referenceNum: 1, tagId: '132sf32fasdfaf1' },
  { keyword: 'xxx2', referenceNum: 2, tagId: '132sf32fasdfaf2' },
  { keyword: 'xxx3', referenceNum: 3, tagId: '132sf32fasdfaf3' }
]);

const selectedTags = ref('');

const handleChange = (value) => {
  selectedTags.value = value.join(',');
  console.log(selectedTags.value); // 输出拼接后的字符串
  // 你可以在这里将 selectedTags.value 发送给后端
};
</script>

在这个示例中,我们将 el-select 的 value 绑定到 item.tagId,这样 selectedTags 将是一个包含 tagId 的数组。在 handleChange 方法中,我们将数组转换为用英文逗号分隔的字符串,并将其赋值给 selectedTags。这样就可以正确地拼接用户选择的选项的 tagId

相关文章:

  • 总结前端常用数据结构 之 栈篇【JavaScript 】
  • ipe网络安全
  • 30.C++多态 3 (多态的原理,虚指针,虚函数表,抽象类)
  • Python学习第十七天之PyTorch保姆级安装
  • 数据结构与算法-图论-最短路-拓展运用
  • CSDN年度评选揭晓,永洪科技AI技术与智能应用双星闪耀
  • 双重机器学习DML
  • HTTPS 与 HTTP 的区别在哪?
  • 【FL0091】基于SSM和微信小程序的社区二手物品交易小程序
  • 002 Java操作kafka客户端
  • Spring Security实战:如何实现OAuth2.0认证与授权?
  • Spring Boot 实战:构建 RESTful API 服务
  • Vue 项目中配置代理的必要性与实现指南
  • ChatGPT入驻Safari,AI搜索时代加速到来
  • 打包rocketmq-dashboard报错问题记录
  • 游戏引擎学习第125天
  • 免费使用SCI润色神器QuillBot
  • LabVIEW同步数据采集功能
  • 力扣1:两数之和
  • mac设置 pip 的镜像
  • 自建网站定位/全网优化推广
  • 最近做国际网站怎么样/手机怎么自己制作网页
  • 网站开发需要学mvc吗/网络营销的方法有哪些
  • 佛山做网站/网店运营培训
  • 深圳企业网站建设报价/优化网络的软件
  • 网站上怎么做动画广告视频下载/seo广告