Storybook: Vue: Vue3 рд╕рдорд░реНрдерди рдЬреЛрдбрд╝реЗрдВ

рдХреЛ рдирд┐рд░реНрдорд┐рдд 5 рдордИ 2020  ┬╖  61рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: storybookjs/storybook

рдореИрдВрдиреЗ рдмрд╕ Vue3 (рдмреАрдЯрд╛) рдРрдк рдХреЗ рд╕рд╛рде рд╕реНрдЯреЛрд░реАрдмреБрдХ рдЪрд▓рд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рдФрд░ рдХреБрдЫ рддреНрд░реБрдЯрд┐рдпрд╛рдВ рдорд┐рд▓реА ... рдХреБрдЫ рдореИрдВ рдЕрдкрдиреЗ рд╡реЗрдмрдкреИрдХ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЛ рдорд░реНрдЬ рдХрд░рдиреЗ рдФрд░ Vue3 рд▓реЛрдбрд░ рдкреНрд▓рдЧрдЗрди рдХреЛ рдкреБрд╢ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдерд╛ред

const wltConfig = require('../apps/webpack-dev');
const { VueLoaderPlugin } = require('vue-loader');

module.exports = {
    stories: ['../**/*.stories.[tj]s'],

    webpackFinal: (config, ...args) => {
        config.plugins.push(new VueLoaderPlugin());
        return { ...config, module: { ...config.module, rules: wltConfig().module.rules } };
    }
};

рдореБрдЭреЗ рдЕрднреА рднреА рд╢реЗрд▓ рдореЗрдВ рдПрдХ рдЪреЗрддрд╛рд╡рдиреА рдФрд░ рдПрдХ рддреНрд░реБрдЯрд┐ рдорд┐рд▓реА рд╣реИ:

WARN   Failed to load preset: "/home/tobi/Projects/modul/portal/client/node_modules/@storybook/vue/dist/server/framework-preset-vue.js"
ERR! Error: Cannot find module 'vue-loader/lib/plugin'

- рдлрд┐рд░ рднреА рд╕реНрдЯреЛрд░реАрдмреБрдХ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХреЛ рдмрдирд╛рддрд╛ рд╣реИ рдФрд░ рдЦреЛрд▓рддрд╛ рд╣реИред рд╡рд╣рд╛рдБ рдореИрдВ рдЗрд╕ рддреНрд░реБрдЯрд┐ рд╕рдВрджреЗрд╢ рдХреЗ рд╕рд╛рде рдлрдВрд╕ рдЧрдпрд╛ рд╣реВрдБ:

Uncaught TypeError: _vue.default is not a constructor
    at Object../node_modules/@storybook/vue/dist/client/preview/render.js (render.js:43)
    at __webpack_require__ (bootstrap:848)
    at fn (bootstrap:150)
    at Object../node_modules/@storybook/vue/dist/client/preview/index.js (index.js:24)
    at __webpack_require__ (bootstrap:848)
    at fn (bootstrap:150)
    at Object.<anonymous> (index.js:55)
    at Object../node_modules/@storybook/vue/dist/client/index.js (index.js:59)
    at __webpack_require__ (bootstrap:848)
    at fn (bootstrap:150)

рдХреНрдпрд╛ рдЗрд╕рд╕реЗ рдмреЗрд╣рддрд░ рддрд░реАрдХрд╛ рд╣реИ? рдореИрдВ рд╕реНрдЯреЛрд░реАрдмреБрдХ рдХреЗ рд▓рд┐рдП рдХреБрд▓ n00b рд╣реВрдВ, рдЗрд╕рд▓рд┐рдП рдХрд┐рд╕реА рднреА рдкреЙрдЗрдВрдЯрд░ рдпрд╛ рд╕рд╣рд╛рдпрддрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЦреБрд╢реА рд╣реЛрдЧреАред (рдореИрдВрдиреЗ vue3 рдХреЗ рдореБрджреНрджреЛрдВ рдХреЛ рдмрд┐рдирд╛ рдХрд┐рд╕реА рд╕рд╛рд░реНрдердХ рдкрд░рд┐рдгрд╛рдо рдХреЗ рдЦреЛрдЬрд╛, рдХрдо рд╕реЗ рдХрдо рдЬрд╣рд╛рдБ рддрдХ рдореИрдВ рдмрддрд╛ рд╕рдХрддрд╛ рд╣реВрдБред)

P1 vue feature request help wanted todo

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рд╣рд╛рдВ, рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдпрд╣ 6.2 рдореЗрдВ рдЙрддрд░реЗрдЧреАред рдЕрднреА рднреА рдХрд┐рд╕реА рдХреЛ рдЗрд╕реЗ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рджреЗрдЦ рд░рд╣реЗ рд╣реИрдВ!

рд╕рднреА 61 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рдЖрдЯреЛрдореЗрд╢рди: рдЕрд░реЗ @ backbone87 @pocka , рдЖрдкрдХреЛ рдЯреИрдЧ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ! рдХреНрдпрд╛ рдЖрдк рдпрд╣рд╛рдВ рд╣рд╛рде рджреЗ рд╕рдХрддреЗ рд╣реИрдВ?

рд╣рдореНрдо .. рд╣рдо рдПрдХ vue3 рдкреВрд░реНрд╡ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИ

рд╣рдореНрдо .. рд╣рдо рдПрдХ vue3 рдкреВрд░реНрд╡ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИ

рдХреНрдпрд╛ рдореИрдВ рдорджрдж рдХрд░ рд╕рдХрддрд╛ рд╣реВрдБ?

рдореИрдВрдиреЗ рдЕрдм рддрдХ рдХреНрдпрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд┐рдпрд╛ рд╣реИ (рдХреЗрд╡рд▓ рдиреЛрдб рдореЙрдбреНрдпреВрд▓ рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдореЗрдВ рд╕реНрдерд┐рдд рдбрд┐рд╕реНрдЯ рдлрд╛рдЗрд▓реНрд╕ рдореЗрдВ, рд╣рд╛рд▓рд╛рдВрдХрд┐):

vue / dist / server / Framework-preset.js

  • VueLoaderPlugin рдЕрдм vue-loader рдирд┐рд░реНрдпрд╛рдд рд╣реИ
  • vue-esm.js рдХреЛ vue.esm-browser.js рд╕рд╛рде рдмрджрд▓реЗрдВ
11c11
< var _plugin = _interopRequireDefault(require("vue-loader/lib/plugin"));
---
> var _plugin = _interopRequireDefault(require("vue-loader").VueLoaderPlugin);
34c34
<         vue$: require.resolve('vue/dist/vue.esm.js')
---
>         vue$: require.resolve('vue/dist/vue.esm-browser.js')

vue / dist / client / рдкреНрд░реАрд╡реНрдпреВ / рд░реЗрдВрдбрд░ .js

рдРрдк рдХрдВрдкреЛрдиреЗрдВрдЯ рдХреЛ рдЕрдм createApp() рд╕рд╛рде рддреНрд╡рд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд╕рднреА рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдЖрджрд┐ рдХреЛ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП

`` `рдЕрд▓рдЧ
21 рд╕реА 21

<var _vue = _interopRequireDefault (рдЖрд╡рд╢реНрдпрдХрддрд╛ ("vue"));

var _vue = _interopRequireDefault (рдЖрд╡рд╢реНрдпрдХрддрд╛ ("vue")ред createApp);
43c43

<var root = new _vue ["рдбрд┐рдлрд╝реЙрд▓реНрдЯ"] ({

var root = _vue ["рдбрд┐рдлрд╝реЙрд▓реНрдЯ"] ({
67c67

<_vue ["рдбрд┐рдлрд╝реЙрд▓реНрдЯ"]ред config.errorHandler = showException;

root.config.errorHandler = showException;
88c88 рд╣реИ

<рд░реВрдЯред $ рдорд╛рдЙрдВрдЯ ('# рд░реВрдЯ');

root.mount('#root');

`` `

рдЕрдм рдореИрдВ vue/dist/client/preview/index.js рд╕рд╛рде рдлрдВрд╕ рдЧрдпрд╛ рд╣реВрдВ рдХреНрдпреЛрдВрдХрд┐ рдРрдк рдЗрдВрд╕реНрдЯреЗрдВрд╕ рдХреА рдЬрд░реВрд░рдд рд╣реИ, рдЬреИрд╕реЗ extends рдкреНрд░реЙрдкрд░реНрдЯреА рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдирд╛ - рдФрд░ рдпрд╣ рдЙрдЪрд┐рдд рд╕реНрдЯреЛрд░реАрдмреБрдХ рдмрд┐рд▓реНрдб рдХреЗ рд╕рд╛рде рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЗрд╡рд▓ рд╕рдВрднрд╡ рд▓рдЧрддрд╛ рд╣реИ ...

Screenshot-2020-05-11-10:41:14

рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдпреЗ рдмрдЪреНрдЪреЗ рдХрджрдо рдХреБрдЫ рдХрд╛рдо рдХреЗ рд╣реИрдВред

рд╣реЗрд▓реЛ рд╕рдм рд▓реЛрдЧ! рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕ рдореБрджреНрджреЗ рдкрд░ рд╣рд╛рд▓ рд╣реА рдореЗрдВ рдмрд╣реБрдд рдХреБрдЫ рдирд╣реАрдВ рд╣реБрдЖ рд╣реИред рдпрджрд┐ рдЕрднреА рднреА рдкреНрд░рд╢реНрди, рдЯрд┐рдкреНрдкрдгреА рдпрд╛ рдмрдЧ рд╣реИрдВ, рддреЛ рдХреГрдкрдпрд╛ рдЪрд░реНрдЪрд╛ рдЬрд╛рд░реА рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрд╡рддрдВрддреНрд░ рдорд╣рд╕реВрд╕ рдХрд░реЗрдВред рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рд╣рд░ рдореБрджреНрджреЗ рдкрд░ рдЖрдиреЗ рдХрд╛ рд╕рдордп рдирд╣реАрдВ рд╣реИред рд╣рдо рд╣рдореЗрд╢рд╛ рдпреЛрдЧрджрд╛рди рдХреЗ рд▓рд┐рдП рдЦреБрд▓реЗ рд░рд╣рддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдХреГрдкрдпрд╛ рд╣рдореЗрдВ рдПрдХ рдкреБрд▓ рдЕрдиреБрд░реЛрдз рднреЗрдЬреЗрдВ рдЕрдЧрд░ рдЖрдк рдорджрдж рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред рдирд┐рд╖реНрдХреНрд░рд┐рдп рдореБрджреНрджреЛрдВ рдХреЛ 30 рджрд┐рдиреЛрдВ рдХреЗ рдмрд╛рдж рдмрдВрдж рдХрд░ рджрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдзрдиреНрдпрд╡рд╛рдж!

рдЯрдХреНрдХрд░

@pksunkara @graup @ рд╣рд╛рд░реВрди-рдкреВрд▓ рдХреНрдпрд╛ рдХрд┐рд╕реА рдХреЛ рднреА рдЗрд╕рдореЗрдВ рдЦреБрджрд╛рдИ рдХрд░рдиреЗ рдХрд╛ рд╕рдордп рдирд╣реАрдВ рд╣реИ? рдЕрдЧрд░ рд╡рд╣рд╛рдБ рдмрджрд▓рд╛рд╡ рдХреА рдЬрд░реВрд░рдд рд╣реИ рдФрд░ рд╣рдо 6.0 рдореЗрдВ рдЙрди рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЕрдм рдпрд╣ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╕рдордп рд╣реЛрдЧрд╛!

Vue3 рдХреЗ рд░рд┐рд▓реАрдЬрд╝ рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж рднреА рд╣рдореЗрдВ рдХрд╛рдлреА рд╕рдордп рдХреЗ рд▓рд┐рдП V22 рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред рдПрдХ рдЪреАрдЬ рдЬреЛ рд╣рдореЗрдВ рдЬрд╛рдВрдЪрдиреА рд╣реЛрдЧреА, рд╡рд╣ рдпрд╣ рд╣реИ рдХрд┐ рд╣рдо рдХрд┐рд╕реА рднреА рддрд░рд╣ рдПрдХ рд╣реА рд╕рдордп рдореЗрдВ рджреЛрдиреЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдпрд╛ рдирд╣реАрдВред

рдпрд╣ рджреЗрдЦрддреЗ рд╣реБрдП рдХрд┐ Vue3 рдЕрднреА рддрдХ рдмреАрдЯрд╛ рд╕реЗ рдмрд╛рд╣рд░ рдирд╣реАрдВ рд╣реИ, рдФрд░ рдпрд╣ рдорд╛рдирддреЗ рд╣реБрдП рдХрд┐ рд╣рдо рд╕реНрдЯреЛрд░реАрдмреБрдХ v6 рдХреЛ рдмрд╛рд╣рд░ рдирд┐рдХрд╛рд▓рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдореИрдВ v6 рд░рд┐рд▓реАрдЬ рдХреЗ рдмрд╛рдж рд╣реЛрдиреЗ рд╡рд╛рд▓реЗ v33 рд╕рдорд░реНрдерди рдХреЛ рд╕реНрдердЧрд┐рдд рдХрд░ рджреВрдВрдЧрд╛

рдореИрдВ рдЬрд▓реНрдж рд╣реА рдЗрд╕ рдкрд░ рдЧреМрд░ рдХрд░рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛ рд░рд╣рд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдИрдЯреАрдП рдирд╣реАрдВ рджреЗ рд╕рдХрддрд╛ред рдЕрднреА рддрдХ Vue 3 рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рдиреЗ рдХрд╛ рдореМрдХрд╛ рдирд╣реАрдВ рдорд┐рд▓рд╛ рдерд╛ред

рдореИрдВ @punkunkara рд╕реЗ рд╕рд╣рдордд

рдзрдиреНрдпрд╡рд╛рдж @ рддреНрдпрд╛рдЧред рдореИрдВ рдпрд╣ рднреА рдорд╛рдирддрд╛ рд╣реВрдВ рдХрд┐ рдпрд╣ рдЬрд░реВрд░реА рдирд╣реАрдВ рд╣реИ - рд╣рдореЗрдВ рд╕реНрдЯреЛрд░реАрдмреБрдХ рдореЗрдВ рдЕрдкреНрд░рдХрд╛рд╢рд┐рдд рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреА рдЙрдореНрдореАрдж рдирд╣реАрдВ рдХреА рдЬрд╛рдиреА рдЪрд╛рд╣рд┐рдПред рдореЗрд░реА рдПрдХрдорд╛рддреНрд░ рдЪрд┐рдВрддрд╛ рдпрд╣ рд╣реИ рдХрд┐, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╣рдо рдЬреБрд▓рд╛рдИ рдореЗрдВ 6.0 рдЬрд╛рд░реА рдХрд░рддреЗ рд╣реИрдВ, Vue3 рдЕрдЧрд╕реНрдд рдореЗрдВ рд▓реЙрдиреНрдЪ рд╣реЛрддрд╛ рд╣реИ, рд╣рдо рд╕рд┐рддрдВрдмрд░ рдореЗрдВ рдЗрд╕рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ, рдФрд░ рдкрд╛рддреЗ рд╣реИрдВ рдХрд┐ рдПрдХ рдмреНрд░реЗрдХрд┐рдВрдЧ рдкрд░рд┐рд╡рд░реНрддрди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдФрд░ рд╣рдо рдЕрдХреНрдЯреВрдмрд░ рдореЗрдВ рдПрдХ рдкреНрд░рдореБрдЦ рд╕рдВрд╕реНрдХрд░рдг рдЯрдХреНрдХрд░ рдХреЗ рдмрд┐рдирд╛ рдЙрд╕ рдмреНрд░реЗрдХрд┐рдВрдЧ рдкрд░рд┐рд╡рд░реНрддрди рдХреЛ рдкреНрд░рд╛рдкреНрдд рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЬреЛ рдЬреВрди 2021 рдореЗрдВ рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред

рдореИрдВ рдмрд╕ рдХрд▓рд╣ рдЪреИрдирд▓ рдкрд░ рдХреБрдЫ рд░реЛрд╢рдиреА рдкрд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рдерд╛, рдЕрдм рдореИрдВ рдЗрд╕реЗ Vue 3 рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рдкреНрд░рдпрд╛рд╕ рдореЗрдВ рдХреИрд╕реЗ рдЬрд╛рддрд╛ рд╣реВрдВ, рдЗрд╕реЗ рдирдП рдкреНрд░реАрд╕реЗрдЯ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА рдХреНрдпреЛрдВрдХрд┐ рдлреНрд░реЗрдорд╡рд░реНрдХ рдХреЛ рдмреВрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддрд░реНрдХ рдереЛрдбрд╝рд╛ рдЕрд▓рдЧ рд╣реИ .. рдореИрдВ рдирд╣реАрдВред vue рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд╡рд░реНрддрдорд╛рди рдХреЛрдб vue 3 рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░реЗрдЧрд╛ред

рдореИрдВ @ рд╢реАрд▓рдорд╛рди рдХреЛ рд╕рдордЭрддрд╛ рд╣реВрдВред рдореБрдЭреЗ рдереЛрдбрд╝рд╛ рдФрд░ рд╕реНрдкрд╖реНрдЯ рдХрд░реЗрдВ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рджрд┐рдЦрддрд╛ рд╣реИ рдХрд┐ рдореБрдЭреЗ рдЕрдкрдиреА рдмрд╛рдд рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдирд╣реАрдВ рдорд┐рд▓реАред

рдореИрдВ @ p3k рдХреЗ рдкреНрд░рдпрд╛рд╕реЛрдВ рдФрд░ @mewewski рдХреА рдЯрд┐рдкреНрдкрдгреА рдХреЗ рд╕рд╛рде рдЬреЛ рд╕рдордЭ рд░рд╣рд╛ рд╣реВрдВ, рдЙрд╕рд╕реЗ рд╣рдореЗрдВ рди рдХреЗрд╡рд▓ рдПрдХ рдирдП рдкреВрд░реНрд╡ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХреА рдЬрд░реВрд░рдд рд╣реИ, рдмрд▓реНрдХрд┐ рд╣рдореЗрдВ @storybook/vue рдкреИрдХреЗрдЬ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рдХрд░рдиреЗ рдХреА рднреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рд▓реЗрдХрд┐рди рд╣рдореЗрдВ рдЕрднреА рднреА рдХрд╛рдлреА рд╕рдордп рдХреЗ рд▓рд┐рдП V2 v2 рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА, рд╣рд░ рдХреЛрдИ Vue v3 рдкрд░ рдирд╣реАрдВ рдЬрд╛рдПрдЧрд╛ред рдЗрд╕рд▓рд┐рдП, рдЬрдм рддрдХ рд╣рдо рдпрд╣ рдирд╣реАрдВ рдХрд╣рдирд╛ рдЪрд╛рд╣рддреЗ рдХрд┐ Vue v2 рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддрдм рддрдХ рдмреЗрд╣рддрд░ рд╣реЛрдЧрд╛ рдХрд┐ рд╣рдо рдПрдХ рдирдпрд╛ @storybook/vue3 рдкреИрдХреЗрдЬ рдмрдирд╛рдПрдБред

рд▓реЗрдХрд┐рди рдЕрдЧрд░ рд╣рдо Vue v2 рд╕рдорд░реНрдерди рдореЗрдВ рдХрдЯреМрддреА рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓реЗрддреЗ рд╣реИрдВ, рддреЛ рд╣рд╛рдБ, рдореИрдВ рд╕рд╣рдордд рд╣реВрдВ рдХрд┐ рд╣рдореЗрдВ рд╕реНрдЯреЛрд░реАрдмреБрдХ v6 рд╕реЗ рдкрд╣рд▓реЗ рд╢рд╛рдпрдж рдмрджрд▓рд╛рд╡ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред

@pksunkara рдЖрдкрдХрд╛ рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рд╕рдорд╛рдзрд╛рди рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд▓рдЧрддрд╛ рд╣реИред ЁЯТп

рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рд╣рдо рдЬрд▓реНрдж рд╣реА рдХрднреА рднреА vue2 рд╕рдорд░реНрдерди рдореЗрдВ рдХрдЯреМрддреА рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рд╣рдо рдЙрди рджреЛ рдкреИрдХреЗрдЬреЛрдВ рдХреЛ рд╕рдорд╛рдирд╛рдВрддрд░ рдореЗрдВ рдЪрд▓рд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдФрд░ рд╢рд╛рдпрдж рднрд╡рд┐рд╖реНрдп рдХреЗ рдХреБрдЫ рдкреНрд░рдореБрдЦ рд░рд┐рд▓реАрдЬ (7.0? 8.0? рдХрднреА рдирд╣реАрдВ) рдореЗрдВ рдкреВрд░реНрдг рдХрдЯ-рдУрд╡рд░ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВред рджреЛ рдкреИрдХреЗрдЬ рдЬрд╛рд░реА рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж рд╣рдо Vpm2 рд╕рдорд░реНрдерди рдХреЛ рд╣рдЯрд╛рдиреЗ рдХрд╛ рд╕рд╣реА рд╕рдордп рд╣реИ, рдпрд╣ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП npm рдбрд╛рдЙрдирд▓реЛрдб рдЖрдБрдХрдбрд╝реЗ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред WDYT?

cc @ndelangen

рдореИрдВрдиреЗ рдЗрд╕реЗ рдПрдХ рд╢реВрдЯ рджрд┐рдпрд╛: https://github.com/milewski/storybook/tree/vue3 рдпрд╣ рдЕрдирд┐рд╡рд╛рд░реНрдп рд░реВрдк рд╕реЗ рдореЗрд░реЗ рд▓рд┐рдП vue3 рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИред

рд╣рд╛рд▓рд╛рдБрдХрд┐, рдХреЛрдб рдХрд╛ рдПрдХ рдмреНрд▓реЙрдХ рдерд╛ рдЬреЛ рдореИрдВ рдЕрдирд┐рд╢реНрдЪрд┐рдд рд╣реВрдВ рдХрд┐ рдЗрд╕реЗ рдХреНрдпрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдерд╛ https://github.com/milewski/storybook/blob/vue3/app/vue/src/client/preview/index.ts#L41 -L58 рдореИрдВрдиреЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдкрд╣рд▓реЗ рдХрднреА рд╕реНрдЯреЛрд░реАрдмреБрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИ .. рдореИрдВ рдЕрднреА рдЕрдкрдиреЗ v33 рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рд╕рд╛рде рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рд╢реБрд░реВ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ред

рдЬрд╣рд╛рдБ рддрдХ рдореИрдВ https://storybook.js.org/docs/guides/guide-vue/ рдмрддрд╛ рд╕рдХрддрд╛ рд╣реВрдВ рдХрд┐ рдЗрд╕ рдЧрд╛рдЗрдб рдХреЗ рдирд┐рд░реНрджреЗрд╢ рдХреЗ рдмрд╛рдж рдореБрдЭреЗ vue 3 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдореЗрд░рд╛ рдХрдВрдкреЛрдиреЗрдВрдЯ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рдорд┐рд▓ рдЧрдпрд╛ ... рдХреЛрдб рдХреЗ рдЙрд╕ рдЯреБрдХрдбрд╝реЗ рдХреЗ рдмрд┐рдирд╛ рдореИрдВрдиреЗ рдЫреЛрдбрд╝ рджрд┐рдпрд╛ рдмрдВрдж ... рд╢рд╛рдпрдж рдХреБрдЫ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкреНрд▓рдЧрдЗрди рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ? рдХреНрдпрд╛ рдХреЛрдИ рдореБрдЭреЗ рдмрддрд╛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдХреМрди рд╕рд╛ рдХреЛрдб / рдРрдбрдСрди / рдкреНрд▓рдЧрдЗрди рдЙрд╕ рдХреЛрдб рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧреА рд╣реЛрдЧрд╛? рдЗрд╕рд▓рд┐рдП рдореИрдВ рдЗрд╕реЗ рдареАрдХ рдХрд░рдиреЗ рдХрд╛ рддрд░реАрдХрд╛ рдвреВрдВрдв рд╕рдХрддрд╛ рд╣реВрдВ рдФрд░ рдХреЛрдИ рдореЗрд░реЗ рд╕рдВрд╕реНрдХрд░рдг рдкрд░ рдХреБрдЫ рдкреНрд░реЗрд░рдгрд╛ рдкрд╛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдпрд╣рд╛рдВ рдПрдХ рдирдпрд╛ рдкреНрд░реАрд╕реЗрдЯ рдЬрд╛рд░реА рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдб рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХрд╛ рдареАрдХ рд╕реЗ рдкрд╛рд▓рди рдХрд░ рд╕рдХрддрд╛ рд╣реИ?

рдорд╣рд╛рди рдХрд╛рдо @milewski - рд╕реБрдкрд░ рд░реЛрдорд╛рдВрдЪрдХ !!! ЁЯЪА

рдореБрдЭреЗ рдкрддрд╛ рдЪрд▓рд╛ рдХрд┐ рдЙрд╕ рдХреЛрдб рдиреЗ рдХреНрдпрд╛ рдХрд┐рдпрд╛ рдерд╛ .. рдпрд╣ рдиреЙрдмреНрд╕ рд╕реЗ рджрд┐рдП рдЧрдП рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдерд╛ .. рдореИрдВрдиреЗ рддрдп рдХрд┐рдпрд╛ рд╣реИ рдХрд┐ .. рдХреНрдпрд╛ рдЖрдк рдЗрд╕реЗ рдЖрдЬрд╝рдорд╛ рд╕рдХрддреЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рд▓рдВрдмреЗ рд╕рдордп рд╕реЗ рд╕реНрдЯреЛрд░реАрдмреБрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ? @ рдкреА 3 рдХреЗ

рдЖрдк рдЗрд╕реЗ рдЪрд▓рд╛рдХрд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

git clone --branch vue3 https://github.com/milewski/storybook.git
cd storybook
yarn bootstrap --core
yarn build (select vue)
cd app/vue
yarn link

then cd to your project and:

yarn link @storybook/vue

рдЖрдкрдХреЗ рдкреНрд░рдпрд╛рд╕реЛрдВ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдмрд╣реБрдд рдзрдиреНрдпрд╡рд╛рдж @milewski - рдореИрдВ рд╕рд┐рд░реНрдл рдЖрдкрдХреА рд╢рд╛рдЦрд╛ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдФрд░ yarn bootstrap --core рдЪрд▓рд╛рдиреЗ рдкрд░ рдПрдХ рддреНрд░реБрдЯрд┐ рд╣реБрдИ рд╣реИ:

тАж
$ node ../../scripts/prepare.js
TSFILE: /home/tobi/Projects/modul/storybook/app/mithril/dist/src/client/preview/globals.d.ts
TSFILE: /home/tobi/Projects/modul/storybook/app/mithril/dist/src/client/preview/types.d.ts
TSFILE: /home/tobi/Projects/modul/storybook/app/mithril/dist/src/client/preview/render.d.ts
TSFILE: /home/tobi/Projects/modul/storybook/app/mithril/dist/src/client/preview/index.d.ts
TSFILE: /home/tobi/Projects/modul/storybook/app/mithril/dist/src/client/index.d.ts
Built: @storybook/[email protected]
lerna ERR! yarn run prepare exited 1 in '@storybook/vue'
lerna ERR! yarn run prepare stdout:
$ node ../../scripts/prepare.js
src/server/framework-preset-vue.ts(5,17): error TS4058: Return type of exported function has or is using name 'VueLoaderPlugin' from external module "/home/tobi/Projects/modul/storybook/app/vue/node_modules/vue-loader/dist/plugin" but cannot be named.
TSFILE: /home/tobi/Projects/modul/storybook/app/vue/dist/client/preview/globals.d.ts
TSFILE: /home/tobi/Projects/modul/storybook/app/vue/dist/client/preview/types.d.ts
TSFILE: /home/tobi/Projects/modul/storybook/app/vue/dist/client/preview/render.d.ts
TSFILE: /home/tobi/Projects/modul/storybook/app/vue/dist/client/preview/util.d.ts
TSFILE: /home/tobi/Projects/modul/storybook/app/vue/dist/client/preview/index.d.ts
TSFILE: /home/tobi/Projects/modul/storybook/app/vue/dist/client/index.d.ts
TSFILE: /home/tobi/Projects/modul/storybook/app/vue/dist/server/options.d.ts
TSFILE: /home/tobi/Projects/modul/storybook/app/vue/dist/server/build.d.ts
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.

lerna ERR! yarn run prepare stderr:
ERR! FAILED (ts) :  
ERR! FAILED to compile ts: @storybook/[email protected] 
error Command failed with exit code 1.

lerna ERR! yarn run prepare exited 1 in '@storybook/vue'
lerna WARN complete Waiting for 3 child processes to exit. CTRL-C to exit immediately.
error Command failed with exit code 1.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.

рдЙрд╣ред рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд╕рд╛рде рдПрдХ рд╕рдорд╕реНрдпрд╛ рдереАред рдореИрдВрдиреЗ рдЕрднреА рдХреЗ рд▓рд┐рдП ts рдЬрд╛рдБрдЪ рдХреЛ рдЕрдХреНрд╖рдо рдХрд░ рджрд┐рдпрд╛ рд╣реИ .. рдореЗрд░реА рд╢рд╛рдЦрд╛ рд╕реЗ рдирд╡реАрдирддрдо рдХреЛрдб рдЦреАрдВрдЪреЗрдВ рдФрд░ рдкреБрдирдГ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВ

рд╣рд╛рдВ, рдЕрдм рдХрдорд╛рдВрдб рдмрд┐рдирд╛ рдХрд┐рд╕реА рддреНрд░реБрдЯрд┐ рдХреЗ рдЪрд▓реАред

yarn build (select vue) рдореБрдЭреЗ рд╕рдВрджреЗрд╢ рдорд┐рд▓рддрд╛ рд╣реИ _storybook WARN рдмрд┐рд▓реНрдб рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рднреА рдирд╣реАрдВ! _ - рдХреНрдпрд╛ рдпрд╣ рд╕рд╣реА рд╣реИ?

рдЗрдВрдЯрд░реЗрдХреНрдЯрд┐рд╡ рдореЗрдиреВ рдкрд░ рдХреЛрдИ рднреА рдРрд╕рд╛ рдирд╣реАрдВ рд╣реИ рдЬреЛ рдЖрдкрдХреЛ рдЪреБрдирдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрдкреЗрд╕ рдмрд╛рд░ рдХреЛ рджрдмрд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ

image

рдЖрд╣! рдХреНрд╖рдорд╛ рдХрд░реЗрдВ, рдореЗрд░рд╛ рдмреБрд░рд╛, рдирд┐рд╢реНрдЪрд┐рддред

рдЕрдм рдпрд╣ рдареАрдХ рд╣реИ рдФрд░ рдореИрдВ рдЕрдкрдиреЗ рдкрд╣рд▓реЗ v33 рдШрдЯрдХ рдХреЗ рд╕рд╛рде рд╕реНрдЯреЛрд░реАрдмреБрдХ рдЪрд▓рд╛ рд╕рдХрддрд╛ рд╣реВрдВ - рд╢рд╛рдирджрд╛рд░! рдзрдиреНрдпрд╡рд╛рдж рдлрд┐рд░ рд╕реЗ, @milewski

@milewski рдмрдврд╝рд┐рдпрд╛ рдХрд╛рдо! рдмрд╕ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдФрд░ рдпрд╣ рдХрд╛рдо рдХрд░рдиреЗ рд▓рдЧрддрд╛ рд╣реИред

рдЬрд╣рд╛рдВ рддрдХ тАЛтАЛрдореИрдВ рдмрддрд╛ рд╕рдХрддрд╛ рд╣реВрдВ, рдХреЗрд╡рд▓ рдмрдбрд╝реЗ рдмреНрд░реЗрдХрд┐рдВрдЧ рдкрд░рд┐рд╡рд░реНрддрди рдЖрдпрд╛рдд рд╣реИрдВ рдФрд░ createApp рд╕рд╛рдорд╛рди, рд╕рд╣реА рд╣реИ? рд╢рд╛рдпрдж рдпрд╣ рдкреАрдЫреЗ рдХреА рдУрд░ рд╕рдВрдЧрдд рдХреЛрдб рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдВрднрд╡ рд╣реИ рдЬреЛ рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд┐рдП рдЧрдП vue рд╕рдВрд╕реНрдХрд░рдг рдХреА рдЬрд╛рдВрдЪ рдХрд░рддрд╛ рд╣реИ рдФрд░ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рд╕рд╣реА рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ? рддрдм рд╣рдо рдкреНрд░реАрд╕реЗрдЯ рдХреЗ рджреЛ рд╕рдВрд╕реНрдХрд░рдг рд╣реЛрдиреЗ рд╕реЗ рдмрдЪ рд╕рдХрддреЗ рдереЗред

рдореИрдВрдиреЗ рдЕрдкрдиреЗ vue рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА, рд▓реЗрдХрд┐рди рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╡рд╣рд╛рдВ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдП рдЧрдП рдХреБрдЫ рд╕рд╛рдорд╛рдиреЛрдВ рдореЗрдВ рдЕрднреА рддрдХ vue3 рд╕рдВрд╕реНрдХрд░рдг рдирд╣реАрдВ рд╣реИрдВред рдЖрдо рддреМрд░ рдкрд░ рдЕрднреА рднреА рдмрд╣реБрдд рд╕рд╛рд░реЗ рдмреАрдЯрд╛ рдФрд░ рдмреЗрдореЗрд▓ рдкреИрдХреЗрдЬ рдкреНрд░рддреАрдд рд╣реЛрддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдкреВрд░реА рд╕реНрдЯреЛрд░реАрдмреБрдХ рдХреЛрдбрдмреЗрд╕ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдереЛрдбрд╝рд╛ рдЗрдВрддрдЬрд╛рд░ рдХрд░рдирд╛ рдмреЗрд╣рддрд░ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рдПрдбрдСрдиреНрд╕ рдЖрджрд┐ рднреА рд╢рд╛рдорд┐рд▓ рд╣реИрдВред рдмрд╣реБрдд рд╕рд╛рд░реЗ рдХрд╛рдо рдХрд░рдиреЗ рд╣реЛрдВрдЧреЗред

рдЬрд╣рд╛рдБ рддрдХ рдореИрдВ рдмрддрд╛ рд╕рдХрддрд╛ рд╣реВрдБ, рдХреЗрд╡рд▓ рдмрдбрд╝реЗ рдмреНрд░реЗрдХрд┐рдВрдЧ рдкрд░рд┐рд╡рд░реНрддрди рдЖрдпрд╛рдд рдФрд░ createApp рд╕рд╛рдорд╛рди рд╣реИрдВ, рд╣реИ рдирд╛?

рд╣рд╛рдБ, рдореИрдВ рднреА рдпрд╣реА рдХрд╣реВрдБрдЧрд╛ред

рдЬрд┐рди рдЪреАрдЬреЛрдВ рдХреА рдореИрдВрдиреЗ рд╢реБрд░реБрдЖрдд рдореЗрдВ рдХреЛрд╢рд┐рд╢ рдХреА рдереА (рдореЗрд░реА рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдЯрд┐рдкреНрдкрдгреА рджреЗрдЦреЗрдВ) рд╕рдм рдореИрдВрдиреЗ рд░рдЦрд╛ рдерд╛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдорд░реНрдЬ - VueLoaderPlugin рдХрд╛ рдзрдХреНрдХрд╛ рдЖрд╡рд╢реНрдпрдХ рдирд╣реАрдВ рд╣реИ, рдЕрдм, @ milewski рдХреЗ рдпреЛрдЧрджрд╛рди рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, рдореИрдВ рдорд╛рдирддрд╛ рд╣реВрдВ: рдмрд┐рд▓реНрд▓реА:

(рдкреБрдирдГ-) рдбреЙрдХреНрд╕ рдореЗрдВ рд╡рд░реНрдгрд┐рдд рдХреЗ рдЕрдиреБрд╕рд╛рд░ рд╕реНрдЯреЛрд░реАрдмреБрдХ рдХреЛ рдЗрдирд┐рд╢рд┐рдпрд▓рд╛рдЗрдЬрд╝ рдХрд░рдирд╛ рд╕реАрдзрд╛ рдерд╛: npm install @storybook/vue --save-dev ; рдореБрдЭреЗ рдХрд┐рд╕реА рдЕрдиреНрдп рд╕рд╣рдХрд░реНрдореА рдирд┐рд░реНрднрд░рддрд╛ рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рднреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рдереА (рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд╣рдо рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЙрдиреНрд╣реЗрдВ рдЕрдкрдиреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд▓рд┐рдП, рд╡реИрд╕реЗ рднреА рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддреЗ рд╣реИрдВ)ред

рддрдм рд╣рдо рдкреНрд░реАрд╕реЗрдЯ рдХреЗ рджреЛ рд╕рдВрд╕реНрдХрд░рдг рд╣реЛрдиреЗ рд╕реЗ рдмрдЪ рд╕рдХрддреЗ рдереЗред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдмрд╣реБрдд рдмреЗрд╣рддрд░ рд╣реЛрдЧрд╛, рдФрд░ рд╢рд╛рдпрдж рдпрд╣ рднреА рд╕рдВрднрд╡ рд╣реИ рдХрд┐ рдЕрдЧрд▓реА рд╕реНрдЯреЛрд░реАрдмреБрдХ рд░рд┐рд▓реАрдЬ рдореЗрдВ рдмрджрд▓рд╛рд╡ рд╕рдВрднрд╡ рд╣реИ ...?

vue рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдореИрдВ vue3- рд╕рдВрдЧрдд рд╕рдВрд╕реНрдХрд░рдгреЛрдВ (рдЙрдирдореЗрдВ рд╕реЗ рдХреБрдЫ) рдХреЗ vhel3 рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП? (рдореИрдВ рд╣рд╛рд▓рд╛рдВрдХрд┐, рд╣рд╛рд▓рд╛рдВрдХрд┐, рдПрдХ рд╡рд┐рд╢реЗрд╖рдЬреНрдЮ рд╡рд┐рд╢реЗрд╖рдЬреНрдЮ рдирд╣реАрдВ рд╣реВрдВред)

@ рддреНрдпрд╛рдЧ

рдЬрд╣рд╛рдБ рддрдХ рдореИрдВ рдмрддрд╛ рд╕рдХрддрд╛ рд╣реВрдБ, рдХреЗрд╡рд▓ рдмрдбрд╝реЗ рдмреНрд░реЗрдХрд┐рдВрдЧ рдкрд░рд┐рд╡рд░реНрддрди рдЖрдпрд╛рдд рдФрд░ createApp рд╕рд╛рдорд╛рди рд╣реИрдВ, рд╣реИ рдирд╛? рд╢рд╛рдпрдж рдпрд╣ рдкреАрдЫреЗ рдХреА рдУрд░ рд╕рдВрдЧрдд рдХреЛрдб рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдВрднрд╡ рд╣реИ рдЬреЛ рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд┐рдП рдЧрдП vue рд╕рдВрд╕реНрдХрд░рдг рдХреА рдЬрд╛рдВрдЪ рдХрд░рддрд╛ рд╣реИ рдФрд░ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рд╕рд╣реА рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ? рддрдм рд╣рдо рдкреНрд░реАрд╕реЗрдЯ рдХреЗ рджреЛ рд╕рдВрд╕реНрдХрд░рдг рд╣реЛрдиреЗ рд╕реЗ рдмрдЪ рд╕рдХрддреЗ рдереЗред

рдореБрдЭреЗ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рд╢реАрд▓рддрд╛ рдХреЗ рд╕рд╛рде рдореБрджреНрджреЛрдВ рдХрд╛ рднреА рд╕рд╛рдордирд╛ рдХрд░рдирд╛ рдкрдбрд╝рд╛, рдореИрдВрдиреЗ рдЙрд╕ рддрд░реАрдХреЗ рдХрд╛ рдЕрдиреБрд╕рд░рдг рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рдЬрд┐рд╕ рддрд░рд╣ рд╕реЗ рд╡рд░реНрддрдорд╛рди рд╕рдВрд╕реНрдХрд░рдг рд╕реЗрдЯрд┐рдВрдЧ / рдлреИрд▓реА рд╣реБрдИ рд╡рд╕реНрддреБ рдереА, рд▓реЗрдХрд┐рди vue3 рдЕрдм рдЙрд╕ рдкреНрд░рдХрд╛рд░ рдХреА рд╡рд╕реНрддреБрдУрдВ рдкрд░ рдкрд░рд┐рд╡рд░реНрддрди рдХреЛ рдЯреНрд░реИрдХ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рд░реЗрдВрдбрд░ рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдЕрдВрджрд░ рдмрдирд╛рдП рдЧрдП, рдореБрдЭреЗ рд░реЗрдлрд░реА рдХреЗ рд╕рд╛рде рд╕рдВрджрд░реНрдн рдмрдирд╛рдирд╛ рдерд╛ред () рдпрд╛ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рд╢реАрд▓ () рдЗрд╕рдХреЗ рд▓рд┐рдП рдЕрджреНрдпрддрди рдХреЛ рдЯреНрд░рд┐рдЧрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП ..

рдореИрдВрдиреЗ рдЕрдкрдиреЗ vue рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА, рд▓реЗрдХрд┐рди рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╡рд╣рд╛рдВ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдП рдЧрдП рдХреБрдЫ рд╕рд╛рдорд╛рдиреЛрдВ рдореЗрдВ рдЕрднреА рддрдХ vue3 рд╕рдВрд╕реНрдХрд░рдг рдирд╣реАрдВ рд╣реИрдВред рдЖрдо рддреМрд░ рдкрд░ рдЕрднреА рднреА рдмрд╣реБрдд рд╕рд╛рд░реЗ рдмреАрдЯрд╛ рдФрд░ рдмреЗрдореЗрд▓ рдкреИрдХреЗрдЬ рдкреНрд░рддреАрдд рд╣реЛрддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдкреВрд░реА рд╕реНрдЯреЛрд░реАрдмреБрдХ рдХреЛрдбрдмреЗрд╕ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдереЛрдбрд╝рд╛ рдЗрдВрддрдЬрд╛рд░ рдХрд░рдирд╛ рдмреЗрд╣рддрд░ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рдПрдбрдСрдиреНрд╕ рдЖрджрд┐ рднреА рд╢рд╛рдорд┐рд▓ рд╣реИрдВред рдмрд╣реБрдд рд╕рд╛рд░реЗ рдХрд╛рдо рдХрд░рдиреЗ рд╣реЛрдВрдЧреЗред

рдореИрдВрдиреЗ рдПрдХ рд╢реБрд░реБрдЖрддреА рдмрд┐рдВрджреБ рдХреЗ рд░реВрдк рдореЗрдВ рдЙрд╕ рдПрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА, рд▓реЗрдХрд┐рди рдпрд╣ vue2 рд╕рд╛рдорд╛рди рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА, рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдЖрдкрдиреЗ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдкреИрдХреЗрдЬрдЬрдиреНрд╕ рдкрд░ рд╕рдВрд╕реНрдХрд░рдг рд╕реЗрдЯ рдХрд┐рдпрд╛ рдерд╛ ... vue 3 doesnt рдХрд╛рдо рдмрд┐рд▓реНрдХреБрд▓ рднреА рдЕрдЧрд░ рдЖрдкрдХреЗ рдкрд╛рд╕ vue-template-compiler рдпрд╛ рдкреБрд░рд╛рдиреЗ vueer рдЗрдВрд╕реНрдЯреЙрд▓рд░ рд╣реИрдВ .. рд╡рд╣рд╛рдБ рдХреБрдЫ рдирд┐рд░реНрднрд░рддрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИ рдЬреЛ рдЖрдпрд╛рдд рдХрд░ рд░рд╣рд╛ рд╣реИ

@ рдкреА 3 рдХреЗ

(рдкреБрдирдГ-) рдбреЙрдХреНрд╕ рдореЗрдВ рд╡рд░реНрдгрд┐рдд рд╕реНрдЯреЛрд░реАрдмреБрдХ рдХреЛ рдЗрдирд┐рд╢рд┐рдпрд▓рд╛рдЗрдЬрд╝ рдХрд░рдирд╛ рд╕реАрдзрд╛ рдерд╛: npm install @ storybook / vue --save-dev; рдореБрдЭреЗ рдХрд┐рд╕реА рдЕрдиреНрдп рд╕рд╣рдХрд░реНрдореА рдирд┐рд░реНрднрд░рддрд╛ рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рднреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рдереА (рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд╣рдо рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЙрдиреНрд╣реЗрдВ рдЕрдкрдиреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд▓рд┐рдП, рд╡реИрд╕реЗ рднреА рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддреЗ рд╣реИрдВ)ред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЗрд╕рд▓рд┐рдП рд╣реБрдЖ рдХреНрдпреЛрдВрдХрд┐ рдореИрдВрдиреЗ vue3 рдФрд░ vue-loader ^ 16 рдХреЛ рд╕рдВрдХреБрд▓ рдкрд░ рдирд┐рд░реНрднрд░рддрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдХрд┐рдпрд╛ рдерд╛ред json

рдЕрдЧрд░ рдЗрд╕рдХреА рд╡рд╛рдХрдИ рдЬрд░реВрд░рдд рд╣реИ рддреЛ рдореИрдВ @storybook/vue3 рдкреИрдХреЗрдЬ рдХреЗ рд╕рд╛рде рдареАрдХ рд░рд╣реВрдВрдЧрд╛ред

FYI рдХрд░реЗрдВ, рдореИрдВрдиреЗ рдЕрднреА рд╕реНрдЯреЛрд░реАрдмреБрдХ Vue2 рдХреЛрдб рдореЗрдВ рдПрдХ рдХреЛрд░ рд░реЗрдВрдбрд░рд┐рдВрдЧ рдмрдЧ рддрдп рдХрд┐рдпрд╛: https://github.com/storybookjs/storybook/pull/11076

рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдХ рддрд╛рдЬрд╝рдЧреА рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП addon-knobs рдФрд░ addon-controls рджреНрд╡рд╛рд░рд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ "рдмрд▓ рддрд╛рдЬрд╝рд╛ рд╡реНрдпрд╡рд╣рд╛рд░" рдХрд╛ рдХрд╛рд░рдг рдмрдирддрд╛ рд╣реИред рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ Vue3 рдХреЛрдб рдкрд░ рдЗрд╕рдХрд╛ рдХреЛрдИ рдЕрд╕рд░ рд╣реИ, рд▓реЗрдХрд┐рди рд╕рд┐рд░реНрдл FYI рдХрд░реЗрдВ рдпрджрд┐ рдЖрдк рдкрд░реАрдХреНрд╖рдг рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рдХреГрдкрдпрд╛ рдЙрд╕ рдЕрдкрдбреЗрдЯ рдореЗрдВ рд╡рд┐рд▓рдп рдХрд░реЗрдВред

рд╕рдВрдкрдиреНрди рд╕рдВрд╕реНрдХрд░рдг рдкрд░ рднреА рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЧрдпрд╛!

рдмрд╕ рдореЗрд░реЗ рджреЛ рд╕реЗрдВрдЯ рдореЗрдВ рдбрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП, рдпрд╣ рджрд┐рдЦрддрд╛ рд╣реИ рдХрд┐ vite 3 рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рдиреЗ рд╡рд╛рд▓рд╛ @pksunkara рдиреЗ рдЕрдкрдиреЗ vue-cli рд╕реНрдЯреЛрд░реАрдмреБрдХ рдкреНрд▓рдЧрдЗрди рдХреЗ рд╕рд╛рде рд╣рд▓ рдХрд░рдиреЗ рдХрд╛ рдПрдХ рдмрдбрд╝рд╛ рдХрд╛рдо рдХрд┐рдпрд╛ред рдЬреЛ рднреА рд╕рдВрднрд╡ рд╣реЛ, рд╣рдореЗрдВ рдкреВрд░реНрд╡ рдирд┐рд░реНрдзрд╛рд░рд┐рдд / рдкреИрдХреЗрдЬ рдХреЛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдпрджрд┐ рд╕рдВрднрд╡ рд╣реЛ, рддреЛ рдкрддрдВрдЧ рдХреЗ рд╕рд╛рде рдмрд╣реБрдд рд╣реА рд╕рд╣рдЬрддрд╛ рд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред

рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ: рдореБрдЭреЗ рдмрд╕ рдПрд╣рд╕рд╛рд╕ рд╣реБрдЖ рдХрд┐ рдпрд╣ рдореБрд╢реНрдХрд┐рд▓ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рд╡реЗрдЗрдЯ рд╡реЗрдмрдкреИрдХ рдХреЗ рдмрдЬрд╛рдп рд╣реБрдб рдХреЗ рдиреАрдЪреЗ рд░реЛрд▓рдЕрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореБрдЭреЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдпрд╣ рджреЗрдЦрдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдХреНрдпрд╛ рд╕реНрдЯреЛрд░реАрдмреБрдХ рдХреЗрд╡рд▓ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд╡реЗрдмрдкреИрдХ / рдмрд┐рд▓реНрдб рд╕рд┐рд╕реНрдЯрдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреА рд╣реИ рдФрд░ рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рд╕реНрд╡рдпрдВ рдХрд╛ рд╡рд┐рдиреНрдпрд╛рд╕ рд╣реЛред

рд╡рд┐рдЪрд╛рд░ рдПрдХ рддрд░рдл, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореИрдВрдиреЗ рд╡реАрдЯ рдХреА рдЬрд╛рдБрдЪ рдирд╣реАрдВ рдХреА рд╣реИ, рд▓реЗрдХрд┐рди рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рд╡реЗ рд╡реАрдпреВ рдХреНрд▓реА рдкреНрд▓рдЧрдЗрди рд╕рд┐рд╕реНрдЯрдо рдХреЛ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд░реЗрдВрдЧреЗ

рд╣рдо "рдЯреВрд▓реАрдВрдЧ" рдмрдирдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд╛рдЗрдЯ рдХреЗ рд▓рд┐рдП рд╕реЛрдЪрддреЗ рдпрд╛ рд▓рдХреНрд╖реНрдп рдирд╣реАрдВ рд░рдЦрддреЗ рд╣реИрдВред рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЛ рд╡реЗрдмрдкреИрдХ рджреНрд╡рд╛рд░рд╛ рдкреНрд░рджрд╛рди рдХреА рдЬрд╛рдиреЗ рд╡рд╛рд▓реА рд╢рдХреНрддрд┐ рдФрд░ рд▓рдЪреАрд▓реЗрдкрди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА, рдФрд░ рдЗрди рд╕рднреА рдЬрд░реВрд░рддреЛрдВ рдХреЛ рдкреВрд░рд╛ рдХрд░рдиреЗ рдХрд╛ рд▓рдХреНрд╖реНрдп рдирд╣реАрдВ рд╣реИред

рдЗрд╕рд▓рд┐рдП рдореИрдВ рдЕрдм рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЬреНрдпрд╛рджрд╛ рдЪрд┐рдВрддрд╛ рдирд╣реАрдВ рдХрд░реВрдБрдЧрд╛, рдФрд░ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рд╕реНрдЯреЛрд░реАрдмреБрдХ рдХреЗ рд▓рд┐рдП Vue3 рд╕рдорд░реНрдерди рдХреЗ рд▓рд┐рдП рдирд╣реАрдВред

@LinusBorg рдХрд╛рд░рдг рдореИрдВ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рд▓рд╛рдпрд╛ рд╣реИ рдХрд┐ рд╣рдо рдЕрдХреНрд╕рд░ Vue 2, рдЬрд╣рд╛рдВ рд╕рдореБрджрд╛рдп рдХреЗ 90% vue-cli рдХреЗ рд╕рд╛рде рдЕрдкрдиреА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд┐рдпрд╛ рд╣реИ, рдФрд░ рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ рд╕реНрдЯреЛрд░реАрдмреБрдХ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдФрд░ рдПрдХ Vue- рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рдХреЗ рд╕рд╛рде рдПрдХ рд╕рдорд╛рди рдореБрджреНрджреЗ рдореЗрдВ рднрд╛рдЧ рдЧрдпрд╛ Cli рдкреНрд░рдмрдВрдзрд┐рдд рдмрд┐рд▓реНрдб рд╕рд┐рд╕реНрдЯрдо рдиреЗ Vue рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рдорд╛рддреНрд░рд╛ рдореЗрдВ рднреНрд░рдо рдкреИрджрд╛ рдХрд┐рдпрд╛ред

рдХреНрдпрд╛ рдЖрдк рд╣рдореЗрдВ рдПрдХ рд╕рдорд╛рди рдореБрджреНрджреЗ рдХреЗ рд╕рд╛рде рднрд╛рдЧрддреЗ рд╣реБрдП рдирд╣реАрдВ рджреЗрдЦ рд░рд╣реЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рд▓реЛрдЧ рд╕реНрдЯреЛрд░реАрдмреБрдХ рдХреЛ рдПрдХ рд╡реНрдпрд░реНрде рдЖрдзрд╛рд░рд┐рдд рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдПрдХреАрдХреГрдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддреЗ рд╣реИрдВ?

рдирд╣реАрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХреЛрдИ рдирд╣реАрдВред Vite CLI рд╕реЗрдЯрдЕрдк рдХреА рддреБрд▓рдирд╛ рдореЗрдВ Vite рдЕрдкрдиреЗ рдЖрдк рдореЗрдВ рдмрд╣реБрдд рдирдВрдЧреЗ рд╣реИрдВред

рд╡реЗрдЗрдЯ рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдХрд┐рд╕реА рднреА рд╕рд░рд▓ рд╡реЗрдмрдкреИрдХ рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рджреНрд╡рд╛рд░рд╛ рдХрд╡рд░ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ .vue , ts(x) рдФрд░ .css рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рд╕рдВрднрд╛рд▓рдиреЗ рдХреЗ рдирд┐рдпрдо рд╣реИрдВред рдФрд░ рдЬрдм рдпрд╣ рдПрдХреНрд╕реНрдЯреЗрдВрд╕рд┐рдмрд▓ рд╣реИ, рдХрд┐ рдПрдкреАрдЖрдИ рд╕реБрдВрджрд░ рдзрд╛рддреБ рдХреЗ рдХрд░реАрдм рддреЛ рд╣рдо рдХрд╕реНрдЯрдо рд░реВрдкрд╛рдВрддрд░рдг рдЬреЛрдбрд╝рдиреЗ рд▓реЛрдЧреЛрдВ рдХреА рдЙрдореНрдореАрдж рдирд╣реАрдВ рд╣реИ рдФрд░ рд╕рд╛рдорд╛рди рдЫреЛрдбрд╝ рджрд┐рдпрд╛ рдФрд░ рд╕рд╣реА рд╣реИред

рдпрд╣ рдбрд┐рдЬрд╛рдЗрди рджреНрд╡рд╛рд░рд╛ рдПрдХ рд╡реНрдпрд╛рдкрдХ рдкреНрд▓рдЧрдЗрди рдПрдкреАрдЖрдИ рдирд╣реАрдВ рд╣реИред рдЕрдЧрд░ рд▓реЛрдЧреЛрдВ рдХреЛ рдЕрдкрдиреА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдлреИрдВрд╕реА рдХрд╕реНрдЯрдо рдЬрд╛рджреВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рддреЛ рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ рдХрд┐ рдЙрдиреНрд╣реЗрдВ рд╡реЗрдмрдкреИрдХ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА рдЬрд┐рддрдиреА рдЬрд▓реНрджреА рдмрд╛рдж рдореЗрдВ, рдЗрд╕рд▓рд┐рдП Vue CLI рдХреЗ рд╕рд╛рде рдЬрд╛рдПрдВред

Vite рдЕрдкрдиреЗ рд▓рдХреНрд╖реНрдпреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХреЗ рд░реВрдк рдореЗрдВ "рдХрд┐рд╕реА рднреА рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЗ рдХреЗ рд▓рд┐рдП рдПрдХреНрд╕реНрдЯреЗрдВрд╕рд┐рдмрд┐рд▓рд┐рдЯреА" рдирд╣реАрдВ рджреЗрдЦрддрд╛ рд╣реИред

рдЗрд╕рд▓рд┐рдП рдореИрдВ рдХрд╣реВрдВрдЧрд╛ рдХрд┐ рдХрд┐рд╕реА рднреА Vite рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЛ рдЖрдорддреМрд░ рдкрд░ рд╕реНрдЯреЛрд░реАрдмреБрдХ / vue рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдЬрдм рддрдХ рдХрд┐ рдЙрд╕рдХрд╛ рд╡реЗрдмрдкреИрдХ рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рдореЗрд░реЗ рджреНрд╡рд╛рд░рд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдмреБрдирд┐рдпрд╛рджреА рдирд┐рдпрдореЛрдВ рдХреЛ рдХрд╡рд░ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдЬреЛ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдХрд░рддрд╛ рд╣реИ

@LinusBorg рдареАрдХ рд╣реИ, рдЬреЛ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИред рдЗрдирдкреБрдЯ рдХреЗ рд▓рд┐рдП рдЖрднрд╛рд░реА for рдХреЛрд░ Vue рдЯреАрдо рд╕реЗ рдХреЛрдИ рднреА рдорд╛рд░реНрдЧрджрд░реНрд╢рди рд╣рдореЗрд╢рд╛ рдмрд╣реБрдд рд╕рд░рд╛рд╣рдирд╛ рдХреА рдЬрд╛рддреА рд╣реИ!

рдХрд╛рдо рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж рд╕рднреА рдХреЛ рд╕реНрдЯреЛрд░реАрдмреБрдХ рдореЗрдВ рдбрд╛рд▓ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдпрд╣ рдореЗрд░реЗ Vue 3 рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрдВрддрдЬрд╛рд░ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рд╣реИ :)

рдЪреВрдБрдХрд┐ Vue3 рдЕрдм RC рдореЗрдВ рд╣реИ , рдЗрд╕рд▓рд┐рдП рдпрд╣ рд╕рд╛рд░реНрдердХ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ V6 рдореЗрдВ Vue3 рд╕рдорд░реНрдерди рдХреЛ рдЬреЛрдбрд╝рд╛ рдЬрд╛рдП рдпрд╛ рдирд╣реАрдВред

@hollandThomas рд╣рдо рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдордзреНрдп-рдЖрд░рд╕реА рд╣реИрдВ рдЗрд╕рд▓рд┐рдП vue3 рдХреЛ 6.1 рдореЗрдВ рдЖрдирд╛ рд╣реЛрдЧрд╛ред рдЙрд╕ рдиреЗ рдХрд╣рд╛, рд╣рдореЗрдВ рдХреБрдЫ рд╣рдлреНрддреЛрдВ рдореЗрдВ рдкрд╣рд▓реЗ 6.1 рдЕрд▓реНрдлрд╝рд╛рдЬрд╝ рд░рд┐рд▓реАрдЬрд╝ рдХрд░рдиреЗ рдЪрд╛рд╣рд┐рдП, рддрд╛рдХрд┐ рдЕрдЧрд░ рдХреЛрдИ рдЗрд╕реЗ рдПрдХ рд╕рд╛рде рд░рдЦрдирд╛ рд╢реБрд░реВ рдХрд░реЗ, рддреЛ рдореБрдЭреЗ рдпрдХреАрди рд╣реИ рдХрд┐ рдПрдХ рдмрдбрд╝рд╛ рджрд░реНрд╢рдХ рд╡рд░реНрдЧ рд╣реИ рдЬреЛ рдЗрд╕рдХреЗ рд▓рд┐рдП рднреВрдЦрд╛ рд╣реИ!

рдХреНрдпрд╛ рдХреЛрдИ рдРрд╕реА рд╕рдХреНрд░рд┐рдп рд╢рд╛рдЦрд╛рдПрдВ рд╣реИрдВ, рдЬрд┐рдирдХрд╛ рдЙрдкрдпреЛрдЧ рдпрд╛ рдпреЛрдЧрджрд╛рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдо Vue 3 рдХреЛ рддреИрдпрд╛рд░ рд╣реЛрдиреЗ рдореЗрдВ рдорджрдж рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ?

рд╣рдорд╛рд░реЗ рдУрдЖрд░рдЬреА рдореЗрдВ рд╣рдорд╛рд░реЗ Vue ui- рдШрдЯрдХ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╣рдорд╛рд░реЗ рд╕рднреА Vue рдкреНрд░реЛрдЬреЗрдХреНрдЯреНрд╕ рдХреЛ рдЫреВрддреА рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпрд╣ Vue 3 рдХреЛ рдЖрдЬрд╝рдорд╛рдиреЗ рд╡рд╛рд▓реЗ рдкрд╣рд▓реЗ рдЪреАрдЬреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рд╣реИ, рдФрд░ рд╣рдо рдЬрд╝рд░реВрд░рдд рдкрдбрд╝рдиреЗ рдкрд░ рдкрд░реАрдХреНрд╖рдг рдпрд╛ рдорд╛рдЗрдЧреНрд░реЗрдЯ рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрддреНрд╕реБрдХ рд╣реЛрдВрдЧреЗред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЕрдиреНрдп рд▓реЛрдЧ рдПрдХ рд╣реА рдирд╛рд╡ рдореЗрдВ рд╣реЛрдВрдЧреЗред

рдЕрдм рдбреЙрдХреНрд╕ рдореЗрдВ рднреА v2 -> v3 рдорд╛рдЗрдЧреНрд░реЗрд╢рди рдЧрд╛рдЗрдб https://v3.vuejs.org/guide/migration/introduction.html#overview рд╣реИ

@milewski @graup @ рдЖрд░реЛрди-рдкреВрд▓ @elevatebart рд╣рдо рдЕрднреА 6.1-рдЕрд▓реНрдлрд╛ рдореЗрдВ рд╣реИрдВред рдХрд┐рд╕реА рдХреЛ рдЗрд╕рдХреЗ рд▓рд┐рдП рдПрдХ рдкреАрдЖрд░ рдкрд░ рдПрдХ рд╢реЙрдЯ рд▓реЗрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ?

@ p3k рдзрдиреНрдпрд╡рд╛рдж рд╕рд┐рд░реНрдл рдЖрдкрдХреЗ рд╡рд┐рд╡рд░рдг рдХреЗ рд╕рд╛рде рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдореЗрд░реЗ рд▓рд┐рдП рдХрд╛рдо рдХреА рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ, рдЗрддрдиреА рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдирд╣реАрдВ рдХрд┐рдпрд╛
webpack config рдХреЛ main.js рдореЗрдВ рдЖрд╕рд╛рдиреА рд╕реЗ рддрдп рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ

webpackFinal: async (config, {configType}) => {

    config.resolve.alias['vue$'] = 'vue/dist/vue.esm-browser.js'

    return config
  }

рдФрд░ рд▓реЛрдбрд░ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ

рд░реЗрдВрдбрд░ рдХреЗ рд╕рд╛рдеред js .storybook рдореЗрдВ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдереЛрдбрд╝рд╛ рдЕрдЯрдХ рдЧрдпрд╛

@ рд╢реАрд▓рдореИрди рдХреНрдпрд╛ рдпрд╣ рд╕рдВрд╕реНрдХрд░рдг '6.1.0-рдЕрд▓реНрдлрд╛.1' vue3 рдХреЗ рд╕рд╛рде рд╕рдВрдЧрдд рд╣реИ?

рдпрдХреАрди рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдирд╣реАрдВ рдХреА рддрд░рд╣ рд▓рдЧ рд░рд╣рд╛ рд╣реИред рдЕрднреА рднреА рджреВрд╕рд░реЗ рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рд╕рдорд░реНрдерди рдХрд┐рдпрд╛ ..

рдирд╣реАрдВ рдЕрднреА рддрдХ рдирд╣реАрдВред рдореБрдЭреЗ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдпрд╣рд╛рдБ рдХреЛрдИ рдореЗрд░реА рдЯрд┐рдкреНрдкрдгреА рдХреЗ рдЕрдиреБрд╕рд╛рд░, рдЗрд╕рдореЗрдВ рдпреЛрдЧрджрд╛рди рджреЗрдЧрд╛

@shilman рдореБрдЭреЗ рдЕрднреА рднреА Vue 3 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдореМрдХрд╛ рдирд╣реАрдВ рдорд┐рд▓рд╛ рд╣реИ has рдореЗрд░реЗ рдХрд╛рдо рдореЗрдВ рдЗрд╕ рдорд╣реАрдиреЗ Vue 2 рдЖрдзрд╛рд░рд┐рдд рдЙрддреНрдкрд╛рдж рд░рд┐рд▓реАрдЬрд╝ рдХреА рд╕рдордп рд╕реАрдорд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореЗрд░реЗ рдкрд╛рд╕ рд╕рдордп рдирд╣реАрдВ рдерд╛ред

рдЗрд╕рд▓рд┐рдП рдХрд╛рд░реНрдп рдореВрд▓ рд░реВрдк рд╕реЗ рд╣реИрдВ

  • рдПрдкреНрд▓рд┐рдХреЗрд╢рди / vue3 рдХреЗ рд▓рд┐рдП рдПрдкреНрд▓рд┐рдХреЗрд╢рди / vue рдХреА рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдмрдирд╛рдПрдВ
  • рд╕рднреА рд░реВрдкрд░реЗрдЦрд╛ рд░реЗрдлрд░реА рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рдирд╛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ
  • https://github.com/milewski/storybook/tree/vue3 рдореЗрдВ @milewski рджреНрд╡рд╛рд░рд╛ рдХрд┐рдП рдЧрдП рдкрд░рд┐рд╡рд░реНрддрди рд▓рд╛рдЧреВ рдХрд░реЗрдВ
  • рдирдП рд░рд╕реЛрдИ рдХреЗ рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░реЗрдВ рдпрд╛ рдмрдирд╛рдПрдВ
  • рдЕрд▓рдЧ рдХрд╣рд╛рдиреА / vue3 рдШрдЯрдХ рдкрд░рд┐рднрд╛рд╖рд╛ рд╡рд┐рдзрд┐ рд╕рдВрдпреЛрдЬрдиреЛрдВ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВ рдФрд░ рдЬрд╛рдВрдЪреЗрдВ рдХрд┐ рдХреНрдпрд╛ рд╡реЗ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ

?

@chartinger рдореБрдЭреЗ рд╕рдмрд╕реЗ рд╕реАрдзрд╛ рд░рд╛рд╕реНрддрд╛ рд▓рдЧрддрд╛ рд╣реИред рдЕрдЧрд░ рд╣рдо рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛ рд░рд╣реЗ рд╡реАрдпреВ рдХреЗ рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдЙрди рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЛ рд╕рд╢рд░реНрдд рд░реВрдк рд╕реЗ рдХреИрд╕реЗ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рдП рдФрд░ рдПрдХ рдкреИрдХреЗрдЬ рдХреЛ рдмрдирд╛рдП рд░рдЦреЗрдВ, рддреЛ рдпрд╣ рдФрд░ рднреА рдмреЗрд╣рддрд░ рд╣реЛрдЧрд╛ред

рдореИрдВрдиреЗ https://github.com/chartinger/storybook/tree/app-vue3 рдореЗрдВ рдПрдХ рдкреНрд░рдпреЛрдЧ рдХрд┐рдпрд╛ (рдЙрдкрд░реЛрдХреНрдд рдХрд╛рдВрдЯреЗ рд╕реЗ рдХреБрдЫ рдмрджрд▓рд╛рд╡реЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдереА) рдЬреЛ рдореИрдВрдиреЗ рдЕрдм рддрдХ рдкрд╛рдпрд╛:

рдЕрдЪреНрдЫрд╛:

  • рдореВрд▓ vue3 рдШрдЯрдХ рдкреНрд░рд╕реНрддреБрдд рдХрд░реЗрдВрдЧреЗ
  • рдирд┐рдпрдВрддреНрд░рдг рд╕реЗ рдкрд░рд┐рд╡рд░реНрддрди рд▓рд╛рдЗрд╡ рдЕрдкрдбреЗрдЯ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ

рдЦрд░рд╛рдм:

  • рд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд░реНрдЧ-рд╕рдЬрд╛рдпрд╛ рдкреБрдП рдШрдЯрдХреЛрдВ рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░рддреАрдд рдирд╣реАрдВ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ
  • рдХреЛрдИ рд╡рд┐рдЪрд╛рд░ рдирд╣реАрдВ рд╣реИ рдЕрдЧрд░ knobs рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рддреЛ рдореИрдВ v3 рдХреЗ рд╕рд╛рде рд╕реНрдЯреЛрд░реАрдмреБрдХ рд╕реАрдЦрдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ рддрд╛рдХрд┐ рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдбреЗрдореЛ рдХреЛрдб рдпрд╛ рдкрд┐рдЫрд▓реЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рди рд╣реЛрдВ
  • рдкреНрд░реЙрдкреНрд╕ рд╕реЗ рдирд┐рдпрдВрддреНрд░рдг-рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреА рдХреЛрдИ рдСрдЯреЛ-рдкрд╣рдЪрд╛рди рдирд╣реАрдВ рд╣реИ

рдЕрдиреНрдп:

  • StoryMeta рдореЗрдВ рдШрдЯрдХ рдЖрдпрд╛рдд рдХрд░рдирд╛ рдХреБрдЫ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдХрд╣рд╛рдиреА рдореЗрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП
  • рд╡реИрд╢реНрд╡рд┐рдХ рдШрдЯрдХ рдЕрдм рдРрдк рдЗрдВрд╕реНрдЯреЗрдВрд╕ рдХреЗ рд▓рд┐рдП рдмрд╛рдзреНрдп рд╣реИрдВ, рдХреНрдпрд╛ рдЗрд╕реЗ .storybook / рдкреНрд░реАрд╡реНрдпреВ.рдЬреЗрдПрд╕ рдпрд╛ рдХрд┐рд╕реА рдЕрдиреНрдп рддрд░реАрдХреЗ рд╕реЗ рдкреНрд░рджрд╛рди рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИ? (рдХреНрдпрд╛ рдЗрд╕рдХреА рдЬрд░реВрд░рдд рд╣реИ?)

@elevatebart vue3 рдХреЗ рд▓рд┐рдП vue-docgen-api рдХреА рд╕реНрдерд┐рддрд┐ рдХреНрдпрд╛ рд╣реИ? тШЭя╕П

рдпрд╣ рд╕рдордЧреНрд░ рд░реВрдк рд╕реЗ рд╕рдВрдЧрдд рд╣реИред рд▓реЗрдХрд┐рди рд╕реЗрдЯрдЕрдк рдлрд╝рдВрдХреНрд╢рди рдореЗрдВ рдИрд╡реЗрдВрдЯ рдИрдЯрд┐рдВрдЧ рдХреЛ рдЕрднреА рддрдХ рдирд┐рдкрдЯрд╛рдпрд╛ рдирд╣реАрдВ рдЧрдпрд╛ рд╣реИред

рдЗрд╕рдХреЗ рд▓рд┐рдП, рдореБрдЭреЗ рдЕрднреА рднреА рд╕реЗрдЯрдЕрдк рдлрд╝рдВрдХреНрд╢рдВрд╕ рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХрд░рдиреЗ рдФрд░ рдЙрди рдЙрддреНрд╕рд░реНрдЬрди рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╢рд╛рдирджрд╛рд░ рддрд░реАрдХрд╛ рдЪрд╛рд╣рд┐рдПред

рдЪреВрдВрдХрд┐ рдлрд╝рдВрдХреНрд╢рди рдХрдИ рдлрд╝рд╛рдЗрд▓реЛрдВ рдореЗрдВ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ рдЗрд╕рд▓рд┐рдП рдЗрд╕рдореЗрдВ рдереЛрдбрд╝рд╛ рд╕рдордп рд▓рдЧ рд╕рдХрддрд╛ рд╣реИред

@chartinger рдХреБрдЫ рдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рд╕рд╛рде рдЕрдкрдиреА рд╢рд╛рдЦрд╛ рдХреЛ рдЕрджреНрдпрддрди рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ? рдореИрдВ "рдирд┐рдпрдВрддреНрд░рдг рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЗ рдСрдЯреЛрдбреЗрдЯреЗрдХреНрд╢рди" рд╕рдорд╕реНрдпрд╛ рдкрд░ рдЦреБрджрд╛рдИ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдЬреЛ рдЖрдкрдХреЛ рдорд┐рд▓реА, рдФрд░ рдореИрдВ рд╢рд╛рдпрдж рдХреНрд▓рд╛рд╕-рд╕рдЬреЗ рд╣реБрдП рдореБрджреНрджреЗ рдХреЛ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рд╕реА рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВред

@ рд╢рд┐рд▓рдореИрди I рдиреЗ vue-cli рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдПрдХ v33 рдЙрджрд╛рд╣рд░рдг рдЬреЛрдбрд╝рд╛, рдФрд░ рдмрдЯрди рдЙрджрд╛рд╣рд░рдг рдХреЛ рд░рдЪрдирд╛ рдФрд░ рд╡рд░реНрдЧ рдПрдкреАрдЖрдИ рдХреЗ рд▓рд┐рдП рдорд╛рдЗрдЧреНрд░реЗрдЯ рдХрд┐рдпрд╛ (рдореИрдВрдиреЗ рдЗрд╕реЗ рдХреЛрдб рдореЗрдВ рдПрдиреЛрдЯреЗрд╢рди рдХрд╣рд╛, рдЬрд┐рд╕реЗ рдмрджрд▓рдирд╛ рд╣реЛрдЧрд╛ рд▓реЗрдХрд┐рди рдЕрднреА рдХреЗ рд▓рд┐рдП рдХрд░рдирд╛ рд╣реЛрдЧрд╛)ред рдХрд┐рд╕реА рддрд░рд╣ рд╡рд░реНрдЧ рдЖрдкреА рдШрдЯрдХреЛрдВ рдиреЗ рдЗрд╕ рдмрд╛рд░ рд▓реЛрдб рдХрд┐рдпрд╛ред

рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП npm link рдФрд░ npm link @storybook/vue3 рддрджрдиреБрд╕рд╛рд░ рдордд рднреВрд▓рдирд╛ред

FYI рдХрд░реЗрдВ: рдореИрдВрдиреЗ рдЕрднреА @andoshin11/storybook-vue3 npm рдкрд░ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд┐рдпрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЗрд╕реЗ рдЖрдЬрд╝рдорд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдмреЗрдЭрд┐рдЭрдХ ЁЯСЗ

https://www.npmjs.com/package/@andoshin11/storybook -vue3

btw, Vue 3 рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рддреМрд░ рдкрд░ рдмреАрдЯрд╛ рд╕реЗ рдмрд╛рд╣рд░ рд╣реИред

рдкреБрдирд╢реНрдЪред рд╕реНрдЯреЛрд░реАрдмреБрдХ @ andoshin11 рдХреЗ рдЕрдкрдиреЗ рдХрд╛рдВрдЯреЗ / рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж

// рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ: рдмрд╕ рдзрд╛рдЧрд╛ рдФрд░ рдорд╣рд╛рди рдиреМрдХрд░реА рд▓реЛрдЧ рдкрдврд╝реЗрдВ .. рдореИрдВ рдЗрд╕ рдкрд░ рдПрдХ рд╢реЙрдЯ рд▓реЗ рд╕рдХрддрд╛ рд╣реВрдБ :)

рдмрд╣реБрдд рдмрдврд╝рд┐рдпрд╛ рдХрд╛рдо рд╕рдм рд▓реЛрдЧред рдореИрдВ 6.1 рд░рд┐рд▓реАрдЬ рдореЗрдВ рдЗрд╕реЗ рдкрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрдпрд╛рд░ рдХрд░рддрд╛ рд╣реВрдБред рдХреНрдпрд╛ рдХреЛрдИ рдЗрд╕реЗ рд▓реЗрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реИ? рдпрд╣ рдмрд╣реБрдд рдЙрдЪреНрдЪ рдкреНрд░рднрд╛рд╡ рд╡рд╛рд▓рд╛ рдпреЛрдЧрджрд╛рди рд╣реЛрдЧрд╛ред рдЖрджрд░реНрд╢ рд░реВрдк рд╕реЗ рд╣рдо рдПрдХ рд╣реА рдкреИрдХреЗрдЬ рдореЗрдВ vue3 рдФрд░ vue2 рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддреЗ рд╣реИрдВ, рдХреБрдЫ рдСрдЯреЛрдбреЗрдЯреЗрдХреНрд╢рди рдпрд╛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рдХрд┐рд╕ рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реИред

рдЗрд╕ рдХрд╛рд░реНрдп рдХрд╛ рджрд╛рдпрд░рд╛:

  • [] Vue3 рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдкрд░рд┐рд╡рд░реНрддрди рдХрд░рдирд╛
  • [] V23 vue рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рд▓рд┐рдП e2e рдкрд░реАрдХреНрд╖рдг рдЬреЛрдбрд╝рдирд╛ (рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдЗрд╕рдХреЗ рд▓рд┐рдП рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдПрдХ рдЯреЗрдореНрдкрд▓реЗрдЯ рд╣реИ, рдФрд░ рдпрд╣ рдмрд╣реБрдд рдХрдард┐рди рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП)
  • [] рдкреНрд░рд▓реЗрдЦрди рдЕрджреНрдпрддрди рдХрд░рдирд╛
  • [] рдмрдЧрдлрд┐рдХреНрд╕ рдХреЗ рд▓рд┐рдП рдЙрдкрд▓рдмреНрдз рд╣реЛрдиреЗ рдФрд░ рд╕рдорд░реНрдерди рдХреЗ рд░реВрдк рдореЗрдВ рд╣рдо рдЗрд╕реЗ рдкреНрд░реАрд▓реЗрд░реЗрдЬ рдореЗрдВ рдмрдврд╝рд╛рд╡рд╛ рджреЗрддреЗ рд╣реИрдВ

рдпрджрд┐ рдЖрдк рдЗрд╕ рдкрд░ рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдХреГрдкрдпрд╛ рд╣рдореЗрдВ рд╣рдорд╛рд░реЗ рдХрд▓рд╣ рдкрд░ рд╕рдВрдкрд░реНрдХ рдХрд░реЗрдВ - рдореИрдВрдиреЗ рдЪрд░реНрдЪрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП #vue3 рдЕрд╕реНрдерд╛рдпреА рдЪреИрдирд▓ рдмрдирд╛рдпрд╛ рд╣реИ! https://discord.com/invite/UUt2PJb

Https://github.com/storybookjs/storybook/issues/12632 рдкрд░ рдереЛрдбрд╝рд╛ рдХрд╛рдо рд╣реБрдЖ рд╣реИ

рдЪреВрдБрдХрд┐ Vue 3 рдмреАрдЯрд╛ рд╕реЗ рдмрд╛рд╣рд░ рд╣реИ рдФрд░ рдХреБрдЫ рдорд╣реАрдиреЛрдВ рдореЗрдВ latest рдЯреИрдЧ рдореЗрдВ рдЙрдкрд▓рдмреНрдз рд╣реЛрдЧрд╛, рдХреНрдпрд╛ рд╕реНрдЯреЛрд░реАрдмреБрдХ рдореЗрдВ Vue 3 рд╕рдорд░реНрдерди рдХреЗ рд▓рд┐рдП ETA рдЙрдкрд▓рдмреНрдз рд╣реИ?

рд╕рд╛рде рд╣реА, CHANGELOG рдХреЛ @storybook/vue - https://github.com/storybookjs/storybook/tree/master/app/vue рдЬреЛрдбрд╝рдирд╛ рдорджрджрдЧрд╛рд░ рд╣реЛрдЧрд╛, рддрд╛рдХрд┐ рд╣рдореЗрдВ рдПрдХ рд╡рд┐рдЪрд╛рд░ рдорд┐рд▓ рд╕рдХреЗ @storybook/vue рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЗ рд╕рд╛рде рдХреНрдпрд╛ рдмрджрд▓рд╛ред

@palerdot рдореИрдВ vue3 рдХреЛ рд╕реНрдЯреЛрд░реАрдмреБрдХ 6.1 рдХреЗ рднрд╛рдЧ рдХреЗ рд░реВрдк рдореЗрдВ рднреЗрдЬрдирд╛ рдкрд╕рдВрдж рдХрд░реВрдВрдЧрд╛ред рдпрд╣ рдпреЛрдЧрджрд╛рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рд╕реА рдХреА рддрд▓рд╛рд╢ - рдХреНрдпрд╛ рдЖрдк рд░реБрдЪрд┐ рд░рдЦрддреЗ рд╣реИрдВ? https://github.com/storybookjs/storybook/issues/10654#issuecomment -698200447

CHANGELOG рдХреЗ рд▓рд┐рдП, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдкреВрд░реЗ рдореЛрдиреЛрд░реЗрдкреЛ рдХреЗ рд▓рд┐рдП рдПрдХ рд╣реИ рдФрд░ рдпрд╣ рдкреНрд░рддреНрдпреЗрдХ рдлреНрд░реЗрдорд╡рд░реНрдХ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрддрд┐рд░рд┐рдХреНрдд рдмрдирд╛рдП рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдпрдерд╛рд░реНрдерд╡рд╛рджреА рдирд╣реАрдВ рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдореИрдВ рдкреНрд░рддреНрдпреЗрдХ рд░рд┐рд▓реАрдЬ рдХреА рдШреЛрд╖рдгрд╛ рдХреЗ рд╕рд╛рде рдлреНрд░реЗрдорд╡рд░реНрдХ-рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕рд╛рд░рд╛рдВрд╢ рдХрд░рдиреЗ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реВрдВрдЧрд╛, рдЬреЛ рдХрд┐ рд╢рд╛рдпрдж рдЖрдк рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд╛рд╣рддреЗ рд╣реИрдВред

@ рд╢реАрд▓рдорд╛рди

рдпрд╣ рдпреЛрдЧрджрд╛рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рд╕реА рдХреА рддрд▓рд╛рд╢ - рдХреНрдпрд╛ рдЖрдк рд░реБрдЪрд┐ рд░рдЦрддреЗ рд╣реИрдВ?

рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рдореИрдВ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдЗрд╕ рдкрд░ рд╕рдордп рдирд╣реАрдВ рджреЗ рдкрд╛рдКрдВрдЧрд╛ (рдЙрд▓реНрд▓реЗрдЦ рдирд╣реАрдВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рдореИрдВ storybook codebase рд╕реЗ рдкрд░рд┐рдЪрд┐рдд рдирд╣реАрдВ рд╣реВрдВ)ред

рдореИрдВ рдкреНрд░рддреНрдпреЗрдХ рд░рд┐рд▓реАрдЬ рдХреА рдШреЛрд╖рдгрд╛ рдХреЗ рд╕рд╛рде рдлреНрд░реЗрдорд╡рд░реНрдХ-рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕рд╛рд░рд╛рдВрд╢ рдХрд░рдиреЗ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реВрдВрдЧрд╛, рдЬреЛ рдХрд┐ рд╕рдВрднрд╡рддрдГ рдЖрдк рдПрдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд╛рд╣рддреЗ рд╣реИрдВред

рдзрдиреНрдпрд╡рд╛рджред рдпреЗ рдЕрдЪреНрдЫрд╛ рд░рд╣реЗрдЧрд╛ред рддреБрдо рд╕рд╣реА рд╣реЛред рдПрдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдореИрдВ рд╕рд┐рд░реНрдл рдпрд╣ рдЬрд╛рдирдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдХрд┐ рд╣рд░ рд░рд┐рд▓реАрдЬ рдХреЗ рд╕рд╛рде рдлреНрд░реЗрдорд╡рд░реНрдХ рдХрд╛ рд╕рдорд░реНрдерди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП Vue 3 рдЬреИрд╕реЗ)ред рддреЛ, рдЙрд╕ рдЬрд╛рдирдХрд╛рд░реА рдХреЛ рдореБрдЦреНрдп CHANGELOG рдореЗрдВ рдЬреЛрдбрд╝рдиреЗ рд╕реЗ рдорджрдж рдорд┐рд▓реЗрдЧреАред

рдмрд╕ рдПрдХ рдбреЗрдЯрд╛ рдмрд┐рдВрджреБ рдХреЛ рдЫреЛрдбрд╝рдирд╛ рдЬреЛ рдореБрдЭреЗ рд╕реНрдЯреЛрд░реАрдмреБрдХ рдХреЗ рд╕рд╛рде-рд╕рд╛рде Vue3 рдХрд╛рдо рдХрд░рдирд╛ рдкрд╕рдВрдж рдХрд░реЗрдЧрд╛ред рд╢рд╛рдпрдж Vue рдХреЛрд░ / рдЯреВрд▓рд┐рдВрдЧ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдореЗрдВ рд╕реЗ рдХреБрдЫ рдпрд╣рд╛рдБ рдорджрдж рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЬреИрд╕реЗ @Akryum ?

@ рд╢реАрд▓рдорд╛рди
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореБрдЭреЗ v22 рдФрд░ vue3 рдХреЗ рд╕рд╛рде рдХрд╛рд░реНрдпрдкреБрд╕реНрддрд┐рдХрд╛ рдХрд╛ рд╕рдорд╛рдзрд╛рди рдорд┐рд▓рд╛ред рдЕрдЧрд░ рдореБрдЭреЗ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдЗрд╕рдХреЗ рд▓рд┐рдП рд╕рдордп рдорд┐рд▓ рдЬрд╛рдП рддреЛ рдореИрдВ рдЗрд╕рдХрд╛ рдПрдХ POC рдмрдирд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддрд╛ рд╣реВрдВ ;-)ред рдХреЛрдИ рд╡рд╛рджрд╛ рдирд╣реАрдВред ^ ^
рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрд╛ рдХрд┐ рдореИрдВ рдЕрдкрдирд╛ рд╡рд┐рдЪрд╛рд░ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╕рд╛рдЭрд╛ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред
рдореБрдЭреЗ Vue рдбреЗрдореА рдорд┐рд▓реА рдЬреЛ vue2 & vue3 рдХреЗ рд▓рд┐рдП рдПрдХ рдкреИрдХреЗрдЬ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХрд╛ рд╡рд╛рджрд╛ рдХрд░рддреА рд╣реИред
рдмреЗрд╢рдХ рдЕрднреА рдХрдореНрдкреЛрд╕реНрдЯрд┐рдпрди рдПрдкреА рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдмрд╛рдХреА рд╣реИред рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЙрд╕ рдкреИрдХреЗрдЬ рдХреЗ рд╕рд╛рде рдЗрд╕рдХрд╛ рдПрдХ рдХрджрдо рдПрдХ рдЖрд╢рд╛рдЬрдирдХ рдкреИрдХреЗрдЬ рдХреЗ рд▓рд┐рдП рд╣реИ

13224 рд╡рд╣реА рд╕рдорд╕реНрдпрд╛ред @ рд▓рдХреНрд╖реНрдордг рдХреЛ рдЕрдЧрд▓реЗ рд╕реНрдЯреЛрд░реАрдмреБрдХ рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ Vue 3 рд╕рдорд░реНрдерди рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░рдиреА рдЪрд╛рд╣рд┐рдП?

рд╣рд╛рдВ, рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдпрд╣ 6.2 рдореЗрдВ рдЙрддрд░реЗрдЧреАред рдЕрднреА рднреА рдХрд┐рд╕реА рдХреЛ рдЗрд╕реЗ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рджреЗрдЦ рд░рд╣реЗ рд╣реИрдВ!

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

xogeny picture xogeny  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

dnlsandiego picture dnlsandiego  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

purplecones picture purplecones  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

oriSomething picture oriSomething  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

alexanbj picture alexanbj  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ