Size: a a a

Nuxt.js — русскоговорящее сообщество

2020 June 26

SL

Stanislav Lashmanov in Nuxt.js — русскоговорящее сообщество
Alexey
Снова в студию вопрос о хлебных крошках (breadcrumbs).
Судя по комментариям люди чаще всего используют store для этих целей (по аналогии с этой статьей - https://habr.com/ru/post/491018/)

Meta-информацию все-таки никак нельзя вытащить в nuxt -> чаще всего используются костыльные решения с middleware и перебором route.matched.

Кто-то находил более изящный подход для их реализации? Буду благодарен если поделитесь.
Мета информацию достать из компонента элементарно, просто обратившись к Component.head()
источник

ІК

Ігор Куцан in Nuxt.js — русскоговорящее сообщество
Dmitry Petrik
Мидлвара?
Возможно. Есть шанс поставить глобально?
источник

АН

Андрей Назаров... in Nuxt.js — русскоговорящее сообщество
хлебные крошки вообще на разных страницах могут делаться по разному, я бы не использовал ничего глобального
источник

A

Alexey in Nuxt.js — русскоговорящее сообщество
Да, есть нюанс в том, что есть требование не показывать их на отдельных страницах, но это ладно
источник

DP

Dmitry Petrik in Nuxt.js — русскоговорящее сообщество
Ігор Куцан
Возможно. Есть шанс поставить глобально?
источник

A

Alexey in Nuxt.js — русскоговорящее сообщество
Bogdan Saliuk
чем стор плох?
Плохи скорее костыли используемые вместе с ним
источник

АН

Андрей Назаров... in Nuxt.js — русскоговорящее сообщество
по дефолту крошки делаются просто из this.$route.matched
источник

DP

Dmitry Petrik in Nuxt.js — русскоговорящее сообщество
Мне кажется в нуксте крошки без головной боли в принципе не делаются)
источник

A

Alexey in Nuxt.js — русскоговорящее сообщество
Такое решение можно считать костыльным в таком случае? https://stackoverflow.com/questions/57676974/how-to-create-dynamic-breadcrumbs-in-nuxt-js
источник

V

Vadim in Nuxt.js — русскоговорящее сообщество
Я на еаждой странице генерирую крошки
источник

AD

Aleksandr Dergunov in Nuxt.js — русскоговорящее сообщество
Это плохо?
источник

AD

Aleksandr Dergunov in Nuxt.js — русскоговорящее сообщество
<blockBreadcrumbs
     catalogLink="/blog"
     catalogName="Блог"
     :pageH1="blog.h1"
   />
источник

AD

Aleksandr Dergunov in Nuxt.js — русскоговорящее сообщество
<template>
 <ul class="breadcrumbs" itemscope itemtype="https://schema.org/BreadcrumbList">
   <li itemprop="itemListElement" itemscope itemtype="https://schema.org/ListItem">
     <nuxt-link to="/" itemid="/" itemtype="https://schema.org/Thing" itemscope itemprop="item">
       <span itemprop="name">Главная</span> </nuxt-link><span class="breadcrumbs-arrow">&gt;</span>
     <meta itemprop="position" content="1" />
   </li>
   <li itemprop="itemListElement" itemscope itemtype="https://schema.org/ListItem">
     <nuxt-link :to="catalogLink" :itemid="catalogLink" itemtype="https://schema.org/Thing" itemscope itemprop="item">
       <span itemprop="name">{{ catalogName }}</span> </nuxt-link><span class="breadcrumbs-arrow">&gt;</span>
     <meta itemprop="position" content="2" />
   </li>
   <li itemprop="itemListElement" itemscope itemtype="https://schema.org/ListItem">
     <span itemprop="name">{{ pageH1 }}</span>
     <meta itemprop="position" content="3" />
   </li>
 </ul>
</template>
<script>
export default {
 props: ["catalogLink", "catalogName", "pageH1"]
};

</script>
источник

SL

Stanislav Lashmanov in Nuxt.js — русскоговорящее сообщество
Если не охота ходить по $route то можно добавить глобальный миксин и в нём набивать массив, который получать из inject
источник

AD

Aleksandr Dergunov in Nuxt.js — русскоговорящее сообщество
:)
источник

SL

Stanislav Lashmanov in Nuxt.js — русскоговорящее сообщество
Вот как мета забирается в миксине самой меты https://github.com/nuxt/vue-meta/blob/master/src/shared/mixin.js
источник

V

Vadim in Nuxt.js — русскоговорящее сообщество
Stanislav Lashmanov
Если не охота ходить по $route то можно добавить глобальный миксин и в нём набивать массив, который получать из inject
А если страницы не вложены?
источник

SL

Stanislav Lashmanov in Nuxt.js — русскоговорящее сообщество
Vadim
А если страницы не вложены?
Откуда тогда взять хлебные крошки?
источник

V

Vadim in Nuxt.js — русскоговорящее сообщество
Вручную)
источник

SL

Stanislav Lashmanov in Nuxt.js — русскоговорящее сообщество
Vadim
Вручную)
Тогда в чём вопрос?)
источник