Vue Storefront for Magento 1.0.0-rc.7 release notes

Vue Storefront for Magento 1.0.0.rc.7 contains backward-incompatible changes. To review these backward-incompatible changes, see

1.0.0-rc.7 Backward incompatible changes reference

Vue Storefront for Magento 1.0.0-rc.7 highlights

Refactoring of composables

In this version, the integration packages @vue-storefront/magento has been marked as deprecated. All things from this package, including composables, getters, and helpers have been moved to @vue-storefront/magento-theme

All composables have been refactored and moved to the theme.

  • SharedRefs are not used anymore.
    • from now we use the Pinia store for global state management
    • instead of sharing context between each composables we use the useContext hook from Nuxt Composition API
    • factories have been removed, and from now each composable is a function without dependencies on the @vue-storefront/core package

Getters have been moved to the theme package and marked as deprecated.

In the next releases, getters will be removed.

Helpers have been moved to the theme package

The onSSR hook is not used anymore

From now, each operation that should be performed on the server-side must be called inside on the useFetch and the useAsync functions that are part of Nuxt Composition API.

The i18n plugin is not used anymore

The i18n plugin from @vue-storefront/core is not used anymore. Configuring i18n is the responsibility of the theme package from now.

Modularization

We started the process of split whole app into modules. The first module is the category module that contains components and logic responsible for catalog category pages. In next releases we will continue refactorization and add modules for other parts of app like product, checkout, account, wishlist and so on.

New features

Performance improvements

  • From now, user data is loaded only on pages where it’s necessary like checkout and my account pages. In other cases, user data is not loading and thanks to that the performance on mobile is better because we decreased the time of JS long tasks. https://github.com/vuestorefront/magento2/pull/859
  • We added the storeConfig plugin and changed the approach to getting config from Magento. #862 (opens new window)
    • before we loaded the whole Magento config on page load, and we did that in layout so it was not possible to change the use different layout than the default
    • after this change, we load only a few necessary fields by the Nuxt plugin.
    • Thanks to that it’s possible to use other layouts like default. Moreover, this has an impact on performance because the storeConfig Magento query is not cached on the Magento side, so when we decreased the amount of data, the time of response should be faster.
  • Once we updated the Storefront UI to the newest version, we were able to add support for the NuxtImage for images in the Gallery on ta Product Page #850 (opens new window)

Bugfix

Refactors

Chore

Documentation

  • documentation about composables has been fully rewrote
  • added documentation for API Client methods