• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Kilkukrotne użycie komponentu Vue - unikanie redundancji

Aruba Cloud VPS - 50% taniej przez 3 miesiące!
0 głosów
278 wizyt
pytanie zadane 19 września 2020 w JavaScript przez Artek Stary wyjadacz (11,800 p.)
Rozważmy następującą sytuację : Mam stronę na której używam Vue.js. Na jednej z podstron tworzę instancję Vue i wykorzystuję komponent o nazwie <navbar>. Komponent navbar wykorzystuje inny komponent o nazwie <green-button>. I teraz zauważyłem, że nawet jeżeli navbar już wykorzystuje green-button to ja i tak chcąc używać green-button w obrębie "el" muszę go i tak zaimportować ponownie. Czy to nie jest niepotrzebne powielanie? Nie dałoby się jakoś ponownie wykorzystać ten komponent zaimportowany do komponentu navbar? W swojej aplikacji używam też odrębnego modułu do tłumaczenia tekstu. Zastanawiam się jakby to zrobić aby raz wczytać moduł aby każdy komponent mógł go wykorzystywać.

1 odpowiedź

+2 głosów
odpowiedź 19 września 2020 przez niezalogowany
wybrane 19 września 2020 przez Artek
 
Najlepsza

Zainportuj globalnie powtarzające się komponenty

komentarz 19 września 2020 przez Artek Stary wyjadacz (11,800 p.)
No w sumie dziwie się, że sam na to nie wpadłem :D
komentarz 19 września 2020 przez Artek Stary wyjadacz (11,800 p.)
W sumie jak tak bardziej się nad tym zastanawiam to efekt jest taki jak prosiłem jednak trzeba wszystko deklarować globalnie a niektóre komponenty mogą składać się z kilku innych i trzeba zaimportować każdy trochę to kłopotliwe.
1
komentarz 19 września 2020 przez niezalogowany

Takie życie w świecie komponentów :c Jeśli jest tego sporo, można sobie dodawanie globalnych komponentów zautmatyzować

komentarz 19 września 2020 przez Artek Stary wyjadacz (11,800 p.)

Zrobiłem taki manewr.

import Vue from 'vue';
import ClickDetector from '@jscomponents/click_detector.vue';
import Navbar  from '@jscomponents/navbar.vue';
import TextInputCombo  from '@jscomponents/form_controls/text_input_combo.vue';
import Translator from '@js/modules/helpers/translator.js';
import SubmitButton from '@jscomponents/form_controls/submit_button.vue';
import IconClose from '@jscomponents/form_controls/icon_close.vue';
import PhantomButton from '@jscomponents/form_controls/phantom_button.vue';
import LabeledCheckbox from '@jscomponents/form_controls/labeled_checkbox.vue';

export default {
     build(){
        Vue.component('navbar', Navbar);
        Vue.component('click-detector', ClickDetector);
        Vue.component('text-input-combo', TextInputCombo);
        Vue.component('submit-button', SubmitButton);
        Vue.component('phantom-button', PhantomButton);
        Vue.component('labeled-checkbox', LabeledCheckbox);
        Vue.component('icon-close', IconClose);
        Vue.prototype.translator = Translator;
        return Vue;
     }
};

 

komentarz 19 września 2020 przez niezalogowany
No.. to jeszcze nie tak dużo : D

Podobne pytania

+1 głos
1 odpowiedź 475 wizyt
pytanie zadane 3 sierpnia 2021 w JavaScript przez mikey Użytkownik (820 p.)
+4 głosów
3 odpowiedzi 549 wizyt
0 głosów
0 odpowiedzi 538 wizyt

93,191 zapytań

142,206 odpowiedzi

322,042 komentarzy

62,518 pasjonatów

Advent of Code 2024

Top 15 użytkowników

  1. 3053p. - dia-Chann
  2. 2998p. - Łukasz Piwowar
  3. 2993p. - Łukasz Eckert
  4. 2970p. - CC PL
  5. 2930p. - Tomasz Bielak
  6. 2907p. - Łukasz Siedlecki
  7. 2890p. - rucin93
  8. 2584p. - Adrian Wieprzkowicz
  9. 2536p. - Mikbac
  10. 2485p. - Marcin Putra
  11. 2461p. - Michał Telesz
  12. 2418p. - Michal Drewniak
  13. 2156p. - Anonim 3619784
  14. 1733p. - rafalszastok
  15. 1650p. - Mariusz Fornal
Szczegóły i pełne wyniki

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Wprowadzenie do ITsec, tom 1 Wprowadzenie do ITsec, tom 2

Można już zamawiać dwa tomy książek o ITsec pt. "Wprowadzenie do bezpieczeństwa IT" - mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy aż 15% zniżki! Dziękujemy ekipie Sekuraka za fajny rabat dla naszej Społeczności!

...