@vuemod/prefetch
TypeScript icon, indicating that this package has built-in type declarations

1.0.10 • Public • Published

@vuemod/prefetch logo

@vuemod/prefetch

Easily fetch data before rendering a vue component with vue-router and vuex

If you've used vue-router, vue and vuex, you are familiar with this problem.

The beforeRouteEnter guard does NOT have access to this, because the guard is called before the navigation is confirmed ...

Of course you can use:

beforeRouteEnter (to, from, next) {
  next(vm => {
    // access to component instance via `vm`
  })
}

But, if you use vuex and make a mutation, then the component will be rendered first, and then the data will appear. (The code in the next construct is executed after all hooks).

Of course, you can get data centrally in the beforeResolve hook, but then if your application grows, you will have to write a separate router ...

Plugin adds additional prefectch hook (Similar to serverPrefetch) to components, mixins, extended components and global mixins.

Installation

    yarn add @vuemod/prefetch

or

    npm i @vuemod/prefetch

Usage

import {createPrefetch} from "@vuemod/prefetch";

// ....
const prefetch = createPrefetch();
app.use(prefetch, router, store);

In components

// ...
async prefetch({app, store, router, isClient, isInitial, isFetch}, to, from, next?) {
    // your code
}
// ...

Dependencies (0)

    Dev Dependencies (15)

    Package Sidebar

    Install

    npm i @vuemod/prefetch

    Weekly Downloads

    1

    Version

    1.0.10

    License

    MIT

    Unpacked Size

    300 kB

    Total Files

    22

    Last publish

    Collaborators

    • webigorkiev