Nuxt - глобальные компоненты согласно макету - PullRequest
0 голосов
/ 25 октября 2018

Я занимаюсь разработкой универсального приложения Nuxt, в котором у меня есть два макета, один для панели управления и один для пользовательского интерфейса frond-end.

И что мне нужно, так это зарегистрировать глобальные компоненты, но мне нужно, чтобы они были глобальными только для конкретной компоновки, потому что я не хочу загружать ненужные скрипты в моем внешнем приложении в комплекте.

Есть ли способ сделать это?

Ответы [ 2 ]

0 голосов
/ 26 октября 2018

Решить вашу проблему могут два шага:

  1. создайте файл global_component.js в каталоге плагинов

, затем добавьте следующий код,

import Vue from 'vue'
import your_component from '../your component directory/your_component.vue'

Vue.component('your-component', your_component)
добавить этот js-файл в блок плагинов Nuxt.config.js

плагины: ['@/plugins/global_component.js '],

теперь вы можете использовать свой компонент в любом шаблоне, как показано ниже

<template>
  <section class="container">
  <your-component></your-component>
  </section>
</template>
0 голосов
/ 25 октября 2018

Согласно документам глобальные компоненты зарегистрированы в прототипе Vue и будут доступны из любого компонента в созданном экземпляре Vue.Это означает, что до тех пор, пока вы используете один экземпляр, все глобальные регистрации (компоненты, фильтры, миксины и т. Д.) Будут совместно использоваться.

Таким образом, ответ заключается в том, что не существует простого способа сделать это, особенно когдаNuxt.js позаботится о существенной части конфигурации веб-пакета и разбиения маршрута.

Для оптимизации производительности необходимо выполнить локальную регистрацию компонента.

Еще одна рекомендация, на которую вы можете обратить внимание, эточто даже если вы оптимизируете загрузку компонентов, приложение все равно загрузит все объявленные модули хранилища, плагины, внешние библиотеки и т. д. И, насколько я понимаю, после установки автоматического развертывания для этого приложения и некоторых изменений необходимо развернуть его вПанель управления - весь сайт должен быть отключен для обслуживания.

Я бы посоветовал разделить интерфейс и панель управления для своих приложений, что позволяет разделить ответственность и является единственным способом обеспечить наилучшее качество обслуживания.оптимизация до внешнего интерфейсачасть приложения.

Панель управления обычно доступна на поддомене, но может быть настроена на веб-сервере как подпапка, например, domain.com/control-panel.

...