我想重新加载侧边栏组件(vue js + laravel)

时间:2018-08-09 09:35:30

标签: laravel vue.js

是否可以从其他vue组件重新加载侧栏组件? 我在侧边栏获得了一个menuLabel,它将显示挂起状态下的订单数量。因此,每当我将状态从待处理更改为其他状态时,我都希望更新侧边栏的菜单标签。

例如,当我单击“提交”或SalesOrder.vue中的某个按钮时,我想重新加载侧边栏。

示例组件代码:

export const Routes = [
{
        path: '/admin',
        components: { default: ThemeContent, header: ThemeHeader, sidebar: ThemeSidebar, footer: ThemeFooter },
        children: [
            { path: 'dashboard', component: DashboardAdmin },   
            { path: 'salesorder', component: SalesOrder},   
],
meta: { requiresAdmin: true }
},

2 个答案:

答案 0 :(得分:0)

您可以将第一个侧边栏分离到外部组件,将第二个侧边栏分离到另一个。然后将这两个组件都包含在侧边栏中,并在需要时隐藏/显示它们。

<sidebar>
  <first-sidebar :trigger="boolean"></first-sidebar>
  <second-sidebar :trigger="boolean"></second-sidebar>
</sidebar>

然后在第一个侧边栏组件中

<template>
  <div v-if="trigger">
    <!-- ... -->
  </div>
</template>

<script>
export default {
  props: ['trigger']
}
</script>

最后是第二个侧边栏组件

<template>
  <div v-if="!trigger">
    <!-- ... -->
  </div>
</template>

<script>
export default {
  props: ['trigger']
}
</script>

答案 1 :(得分:0)

感谢大家的帮助,我找到了一种使用总线事件vuejs从一个组件到另一个组件进行交互的方法。 https://alligator.io/vuejs/global-event-bus/

相关问题