Автор оригинала: David Wong.
проблема
Как отфильтровать значения в одном массиве, как показано на следующем рисунке, и в одном массиве есть все данные, в другом массиве есть только часть данных. Если у вас есть все массивы, вам нужно отфильтровать их в соответствии с массивами, в которых есть некоторые данные
Код
Массив со всеми данными
let allRoutes = [
{
path: '/',
name: 'home',
component: () => import('@/views/Home.vue'),
children: [
{
path: '/role',
name: 'role',
meta: {
Tile: 'role'
},
component: () => import('@/views/role/index.vue'),
redirect: '/role/list',
children: [
{
path: 'create',
name: 'roleCreate',
meta: {
Tile: 'create role'
},
component: () => import('@/views/role/create.vue')
},
{
path: 'list',
name: 'roleList',
meta: {
Tile: 'role list'
},
component: () => import('@/views/role/list.vue')
},
{
path: 'update',
name: 'roleUpdate',
meta: {
Tile: 'modify role'
},
component: () => import('@/views/role/update.vue')
}
]
},
{
path: '/adminUser',
name: 'adminUser',
meta: {
Tile: 'administrator'
},
component: () => import('@/views/adminUser/index.vue'),
children: [
{
path: 'create',
name: 'adminUserCreate',
meta: {
Tile: 'create administrator'
},
component: () => import('@/views/adminUser/create.vue')
},
{
path: 'list',
name: 'adminUserList',
meta: {
Tile: 'administrator list'
},
component: () => import('@/views/adminUser/list.vue')
},
{
path: 'update',
name: 'adminUserUpdate',
meta: {
Tile: 'modify administrator'
},
component: () => import('@/views/adminUser/update.vue')
}
]
}
]
},
{
path: '*',
name: '404',
component: () => import('@/views/404.vue')
}
]Массив с частичными данными
По сравнению с массивом всех данных, больше нет имя: "роль Создать",
let someRoutes = [
{
name: 'home',
children: [
{
name: 'role',
children: [{ name: 'roleList' }, { name: 'roleUpdate' }]
},
{
name: 'adminUser',
children: [
{ name: 'adminUserCreate' },
{ name: 'adminUserList' },
{ name: 'adminUserUpdate' }
]
}
]
}
]Оригинал: “https://developpaper.com/how-to-filter-the-values-in-one-array-as-shown-in-the-following-figure-and-code/”