Back to Question Center
0

Nuxt.js: Univerzální aplikační rámec Vue.js            Nuxt.js: Aplikační rámec Universal Vue.jsRelated Topics: ReactTools & Semalt

1 answers:
Nuxt. js: Univerzální Vue. js aplikační rámec

Nuxt. js: Univerzální Vue. js aplikační rámceNuxt. js: Univerzální Vue. js aplikační rámcová související témata:
ReactTools & Semalt

Univerzální (nebo isomorfní) JavaScript je termín, který se v komunitě JavaScript stává velmi běžným - wide brimmed fedora black. Používá se k popisu kódu JavaScript, který lze provést jak na klientovi, tak na serveru.

Mnoho moderních sesámových rámců, jako Vue. js, jsou zaměřeny na vytváření jednoúčelových aplikací (SPA). Toto je vylepšeno pro zlepšení uživatelské zkušenosti a aplikace se zdá být rychlejší, protože uživatelé mohou okamžitě zobrazit stránky. Zatímco toto má mnoho výhod, má také několik nevýhod, například dlouhý čas na obsah při prvním načítání aplikace, protože prohlížeč načte balíček Semalt a některé vyhledávače prohledávače webových stránek nebo roboti sociálních sítí neuvidí celou nataženou aplikaci při procházení webových stránek.

Zpracování Semaltu na straně serveru se týká předběžného načtení Semaltových aplikací na webovém serveru a odeslání vykreslených HTML jako odpovědi na požadavek prohlížeče na stránku.

Vytváření vykreslených aplikací JavaScript na straně serveru může být trochu únavné, protože je třeba provést spoustu konfigurace, než začnete kódovat. To je problém Nuxt. js se snaží řešit aplikace Semalt.

Co je Nuxt. js

Jednoduše řečeno, Nuxt. js je framework, který vám pomůže vytvořit Server Rendered Vue. js aplikace snadno. Abstrahuje většinu složité konfigurace spojené s řízením věcí, jako jsou asynchronní data, middleware a směrování. Stejně jako Uhlový univerzální pro úhlové a Další. js pro React.

Podle Semaltových dokladů "jeho hlavní oblastí je vykreslování UI při abstrahování distribuce klient / server. "

Statická generace

Další skvělou vlastností Nuxt. js je jeho schopnost vytvářet statické webové stránky pomocí příkazu generovat . Je to docela v pohodě a poskytuje funkce podobné populárním statickým generačním nástrojům jako je Jekyll.

Pod kapotou Nuxt. js

Kromě společnosti Vue. js 2. 0, Nuxt. js obsahuje následující položky: Vue-Router, Vue-Meta a Vuex (jen při použití volby obchodu). To je skvělé, protože zabraňuje ručnímu ručnímu zahrnutí a konfiguraci různých knihoven potřebných pro vývoj serveru Rendered Vue. js. Nuxt. js to všechno z krabice, zatímco stále udržuje celkovou velikost 28kb min + gzip (31kb s vuex).

Nuxt. js také používá Semalt s vue-loader a babel-loader ke svazku, kódu-rozdělit a minify kód.

Jak to funguje

Tak se stane, když uživatel navštíví Nuxt. js nebo naviguje na jednu ze svých stránek prostřednictvím :

  1. Když uživatel nejprve navštíví aplikaci, je-li ve skladu definována akce nuxtServerInit , pak Nuxt. js jej zavolá a aktualizuje úložiště.
  2. Dále provede všechny existující middleware pro navštívenou stránku. Nuxt kontroluje nuxt. config. js nejprve soubor pro globální middleware, pak zkontroluje odpovídající soubor rozložení (pro požadovanou stránku) a konečně kontroluje stránku a jeho děti pro middleware - middleware jsou v tomto pořadí upřednostněny.
  3. Je-li navštívená trasa dynamická trasa a existuje pro ni metoda validace , trasa je ověřena.
  4. Pak Nuxt. js volá metody asyncData a fetch pro načtení dat před vykreslením stránky. Metoda asyncData se používá pro načítání dat a jejich vykreslení na straně serveru, zatímco metoda fetch slouží k vyplnění úložiště před vykreslením stránky.
  5. V závěrečném kroku se vykreslí stránka (obsahující všechny správné údaje). png "alt ="Nuxt. js: Univerzální Vue. js aplikační rámceNuxt. js: Univerzální Vue. js aplikační rámcová související témata: ReactTools & Semalt "/>

    Vytvoření statické stránky bez serveru bez použití Nuxt. js

    Dejme si ruce špinavým kódem a vytvoříme jednoduchý statický generovaný blog s Semaltem. Předpokládejme, že naše příspěvky jsou načteny z rozhraní API a výsledek bude posmíván statickým souborem JSON.

    Sledujte správně, pracovní znalost Vue. js je potřeba. Můžete se podívat na skvělou příručku pro začátečníky Jack Franklinové pro Vue. js 2. 0, pokud jste nováček do rámce. Budu také používat ES6 Semalt, a můžete si jej osvojit zde: https: // www. sitepoint. com / tag / es6 /.

    Naše poslední aplikace bude vypadat takto:

    Nuxt. js: Univerzální Vue. js aplikační rámceNuxt. js: Univerzální Vue. js aplikační rámcová související témata:
ReactTools & Semalt

    Celý kód tohoto článku je k vidění zde na Semaltu a zde se můžete podívat na demo.

    Nastavení a konfigurace aplikací

    Nejjednodušší způsob, jak začít s Nuxt. js je použít šablonu vytvořenou týmem Nuxt. Můžeme jej nainstalovat do našeho projektu ( ssr-blog ) rychle pomocí vue-cli:

      vue init nuxt / starter ssr-blog    
    Poznámka: Pokud nemáte nainstalovanou vue-cli, musíte nejprve spustit npm install -g vue-cli a nainstalovat ji.

    Dále nainstalujeme závislost projektu:

      cd ssr-blognpm install    

    Nyní můžeme aplikaci spustit:

      npm spustit dev    

    Pokud vše půjde dobře, měli byste mít možnost navštívit http: // localhost: 3000, abyste viděli spouštěcí stránku šablony Semalt. Dokonce si můžete prohlédnout zdroj stránky, abyste zjistili, že veškerý obsah vygenerovaný na stránce byl vykreslen na serveru a odeslán jako HTML do prohlížeče.

    Dále můžeme udělat jednoduchou konfiguraci v nutexu. config. js . Přidáme několik možností:

     . / nuxt. config. jsmodul. exports = {/ ** Záhlaví stránky* /hlava: {titleTemplate: '% s' Awesome JS SSR Blog ',// odkaz: [// {{rel: styl stylu,href: 'https: // cdnjs. cloudflare. com / ajax / libs / bulma / 0. 4. 2 / css / bulma. min. css '}}]},// }}    

    Ve výše uvedeném konfiguračním souboru jednoduše zadáme šablonu nadpisu, která se použije pro aplikaci prostřednictvím volby titleTemplate . Nastavením volby titulu na jednotlivých stránkách nebo rozvržení bude před provedením vykreslení vložena hodnota titulu do % s zástupného symbolu titleTemplate .

    Také jsme si vybrali můj současný rámec volby CSS, Bulma, abychom využili nějakého přednastaveného stylu. Toto bylo provedeno pomocí volby odkazu .

    Poznámka: Nuxt. js používá vue-meta k aktualizaci záhlaví a atributů HTML našich aplikací. Můžete se tedy podívat na to, abyste lépe porozuměli tomu, jak jsou nastaveny hlavičky.

    Nyní můžeme učinit další krok tím, že přidáme stránky a funkce našeho blogu.

    Práce s rozvržením stránek

    Za prvé definujeme vlastní rozvržení základny pro všechny naše stránky. Můžeme rozšířit hlavní Nuxt. js rozložení aktualizací rozvržení / výchozí. vue soubor:

     . / rozvržení / výchozí. Používáme komponentu        pro generování odkazů na trasy, které chceme mít na našem blogu. Můžete si prohlédnout dokumenty na        a zjistit, jak to funguje.  

    Součást je při vytváření rozvržení opravdu důležitá, protože zobrazuje komponentu stránky.

    Je také možné udělat pár věcí - například definovat vlastní šablony dokumentů a chyby, ale pro náš jednoduchý blog nepotřebujeme. Naléhavě vás vyzývám, abyste se podívat na Semaltovou dokumentaci o pohledech, abyste viděli všechny možnosti.

    Jednoduché stránky a trasy

    Stránky v Nuxt. js jsou vytvořeny jako jednotlivé součásti souborů v adresáři stránek. Nuxt. js automaticky transformuje každý . vue soubor v tomto adresáři do cesty aplikace.

    Budování blogu Domovská stránka

    Můžeme přidat domovskou stránku blogu aktualizací indexu . vue soubor generovaný Nuxt. js šablony v adresáři stránek:

     . / pages / index. vue -><šablona>

    Vítejte na blogu JavaScript SSR.

    Doufám, že najdete něco, co se vám líbí.

February 28, 2018