首页 > 其他分享 >vue 使用filter 把无限极分类遍历为树形结构

vue 使用filter 把无限极分类遍历为树形结构

时间:2023-10-27 22:55:57浏览次数:40  
标签:vue const name url list pid filter 无限极 id

<script setup lang="ts">
interface listType {
    id: number
    url: string
}
const data = [
    {
        id: 1,
        url: '/_nuxt/assets/images/america.png'
    },
    {
        id: 2,
        url: '/_nuxt/assets/images/embass.png'
    },
    {
        id: 3,
        url: '/_nuxt/assets/images/qzsq_sqdt.png'
    }
]
const list = ref<listType[]>([])

// const list = ref({} as listType[])
list.value = data
// list.value = list.value.filter(item => item.id !== id)

const arr = [
    { id: 1, pid: 0, name: '四川' },
    { id: 2, pid: 0, name: '山东' },
    { id: 3, pid: 0, name: '河南' },
    { id: 4, pid: 3, name: '长治' },
    { id: 5, pid: 3, name: '孝感' },
    { id: 6, pid: 1, name: '广元' },
    { id: 7, pid: 1, name: '雅安' },
    { id: 8, pid: 2, name: '德州' }
]
let newarr = []
arr.forEach(r => {
    r.child = arr.filter(item => item.pid == r.id)
    if (r.pid == 0) {
        newarr.push(r)
    }
})
console.log(newarr)
</script>

<template></template>

<style scoped lang="scss">
img {
    opacity: 1;
}
</style>

标签:vue,const,name,url,list,pid,filter,无限极,id
From: https://www.cnblogs.com/photo520/p/17793300.html

相关文章

  • [vue学习]vue使用element时,报错解决。
    解决vue使用element时报错ERRORin./node_modules/element-ui/lib/theme-chalk/fonts/element-icons.ttf是因为字体文件没法引入的原因,只需要修改下webpackconfig的file-loader {test:/\.(eot|svg|ttf|woff|woff2)(\?\S*)?$/,loader:'file-loader'}......
  • vue学习十
    <divid="app10"><ul><listyle="list-style-type:none;"v-for="(item,index)inlist":key="list.id">{{item.num}}</li></ul>......
  • vue学习九
    <divid="app9"style="background-color:aqua;">姓名:<inputtype="text"v-model="name"><br>性别:<inputtype="radio"name=""value="1"v-mo......
  • [Vue学习]Vue组件学习
    组件的概念:页面可重复使用的抽象。拓展html在构建应用时候的不足。组件化开发 步骤  1.定义组件  2.App.vue中script里引入组件 importxxxx from'xxxxx'3.在components中注册组件  4.在模板中使用  ......
  • [vue学习]vue目录结构分析
    node_modules 依赖src源码.bablercbable配置.gitignore git忽略文件index.htmlhtml入口文件【通常在这里加移动端的view-port】package.json 管理模块 相当于maven的pom.xmlwebpack.config.jswebpack的配置文件【打包vue的文件,为浏览器能解析的文件】  .vue组件组......
  • VUE+Ant 自定义cron组件,显示最近运行时间
    先上效果图 自定义组件<template><a-modaltitle="corn表达式":width="modalWidth":visible="visible":confirmLoading="confirmLoading"@ok="handleSubmit"@cancel="close"......
  • vuex的使用
    1.Vue的入口文件引入Vuex:```importVuexfrom'vuex';Vue.use(Vuex);```2.创建一个Vuexstore实例Store实例是一个单一的数据源,用于存储应用程序的状态。您可以在store实例中定义状态、mutations、actions和gettersconststore=newVuex.Store({state:{//状态},mut......
  • 我与Vue.js 2.x 的七年之痒
    ——过去日子的回顾(这是个副标题)——其实这是篇广告软文(这是个副副标题) 以下是一些牢骚和感悟,不感兴趣的可以滑倒最下面,嘻嘻。每每回忆起从前,就感觉时间飞逝,真切的感受到了那种课本中描述的白驹过隙。和很多人发生的,经历的很多事情,就好像昨天一样,但是仔细的思......
  • Django和Vue.js是两种不同的框架,它们各自有自己的特点和用途¹。 **Django**¹: - Dja
    Django和Vue.js是两种不同的框架,它们各自有自己的特点和用途¹。**Django**¹:-Django是一个开放源代码的PythonWeb应用框架¹。-它采用了MTV(模型,视图,模板)的软件设计模式¹。-Django可以方便、快捷地创建高品质、易维护、数据库驱动的应用程序¹。-Django还包含许多功能......
  • 不使用构建工具的vue组件书写方式
    将vue组件转换为普通的js文件(IIFE)先写个简单的,使用ESM方式组织的componentexportdefault{data(){return{count:0}},template:`<button@click="count++">Youclickedme{{count}}times.</button>`}我们把这个组件保存为mycomponent.js这个组件......