diff --git a/docs/reference/plugin/plugins/layout.md b/docs/reference/plugin/plugins/layout.md index be8a079d..146c5fe2 100644 --- a/docs/reference/plugin/plugins/layout.md +++ b/docs/reference/plugin/plugins/layout.md @@ -56,21 +56,21 @@ export default { } ``` -如果只是不想展示`side`,则: +如果只是不想展示`sidebar`,则: ``` { "layout": { - "side": false + "sidebar": false } } ``` `layout`的可选配置有: -- **side**: 左侧区域 +- **sidebar**: 左侧区域,从v4.0.0开始,之前名称叫`side` -- **top**: 头部区域 +- **header**: 头部区域,,从v4.0.0开始,之前名称叫`top` - **logo**:logo和标题区域。 @@ -182,6 +182,15 @@ export default { - **name**:菜单的名称。通过匹配 `name` 和路由元信息 [meta](../../../guide/route.md#扩展路由元信息) 中的 `name`,把菜单和路由关联起来,然后使用路由元信息补充菜单配置,比如 `title`、`path` 等。 - **path**:菜单的路径,可配置第三方地址。 + + - **match**:额外匹配的路径,当前路由命中匹配规则时,此菜单高亮。 (v4.0.0+) + +``` +{ + path: '/product', + match: ['/product/*', '/product/create'] +} +``` - **title**:菜单的标题,如果同时使用[国际化插件](./locale.md),而且`title`的值以`$`开头,则使用`$`后面的内容去匹配语言设置。 diff --git a/docs/zh/reference/plugin/plugins/layout.md b/docs/zh/reference/plugin/plugins/layout.md index be8a079d..146c5fe2 100644 --- a/docs/zh/reference/plugin/plugins/layout.md +++ b/docs/zh/reference/plugin/plugins/layout.md @@ -56,21 +56,21 @@ export default { } ``` -如果只是不想展示`side`,则: +如果只是不想展示`sidebar`,则: ``` { "layout": { - "side": false + "sidebar": false } } ``` `layout`的可选配置有: -- **side**: 左侧区域 +- **sidebar**: 左侧区域,从v4.0.0开始,之前名称叫`side` -- **top**: 头部区域 +- **header**: 头部区域,,从v4.0.0开始,之前名称叫`top` - **logo**:logo和标题区域。 @@ -182,6 +182,15 @@ export default { - **name**:菜单的名称。通过匹配 `name` 和路由元信息 [meta](../../../guide/route.md#扩展路由元信息) 中的 `name`,把菜单和路由关联起来,然后使用路由元信息补充菜单配置,比如 `title`、`path` 等。 - **path**:菜单的路径,可配置第三方地址。 + + - **match**:额外匹配的路径,当前路由命中匹配规则时,此菜单高亮。 (v4.0.0+) + +``` +{ + path: '/product', + match: ['/product/*', '/product/create'] +} +``` - **title**:菜单的标题,如果同时使用[国际化插件](./locale.md),而且`title`的值以`$`开头,则使用`$`后面的内容去匹配语言设置。 diff --git a/packages/fes-plugin-layout/src/runtime/helpers/utils.js b/packages/fes-plugin-layout/src/runtime/helpers/utils.js new file mode 100644 index 00000000..e8b16aa7 --- /dev/null +++ b/packages/fes-plugin-layout/src/runtime/helpers/utils.js @@ -0,0 +1,9 @@ +export const flatNodes = (nodes = []) => nodes.reduce((res, node) => { + res.push(node); + if (node.children) { + res = res.concat( + flatNodes(node.children) + ); + } + return res; +}, []); diff --git a/packages/fes-plugin-layout/src/runtime/views/BaseLayout.vue b/packages/fes-plugin-layout/src/runtime/views/BaseLayout.vue index 21f3bc9f..53a357db 100644 --- a/packages/fes-plugin-layout/src/runtime/views/BaseLayout.vue +++ b/packages/fes-plugin-layout/src/runtime/views/BaseLayout.vue @@ -2,7 +2,7 @@