Как показать элемент navbar только на определенных компонентах Vue.js? - PullRequest
0 голосов
/ 19 сентября 2018

Я использую приложение Vue.js с vue-router в 3-компонентном компоненте:

App.vue:

<template>
  <div id="app">
    <head>
    </head>
    <NavbarComp/>
    <div>
      <div class="middle">
        <router-view/>
      </div>
    </div>
    <FooterComp/>
  </div>
</template>

<NavbarComp/> содержит кнопку входа в систему,который я хотел бы видеть только на целевой странице:

<template>
<div>
<nav>
          <router-link to="/" >
          <h3>My Shining app </h3>
          </router-link> 
          <router-link to="/login">
            <button  v-if="section='landing'"> Login</button>              
          </router-link>
</nav>
</div> 
</template>

Я попытался определить section в хранилище и определить раздел как вычисляемое свойство для каждого компонента:

  section () {
    this.$store.section = 'login'; 
  }

но не удалось.Так что оцените ваши намеки.

1 Ответ

0 голосов
/ 19 сентября 2018

Измените v-if на кнопке так:

v-if="this.$route.name === 'whatever-your-route-name-is'" // 'landing' according to your comment
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...