gpt4 book ai didi

webpack - 将 Nuxt 模块放入 Storybook 中

转载 作者:行者123 更新时间:2023-12-02 13:27:59 24 4
gpt4 key购买 nike

我尝试用 Nuxt 项目中的组件制作一本故事书。到目前为止,我已经显示了组件,但它们都至少使用一个模块,而且我找不到一种导入它们的方法。我似乎并不孤单地在挣扎
( https://forum.vuejs.org/t/nuxt-js-and-storybook/26239 ,
https://github.com/derekshull/nuxt-starter-kit-v2/issues/1 ),
但我希望有人找到了解决方案。

.storybook/webpack.config.js:

const path = require("@storybook\vue\dist\server\config\defaults\webpack.config.js");

module.exports = {
module: {
rules: [
{
test: /\.scss$/,
loaders: ["style-loader", "css-loader", "sass-loader"],
include: path.resolve(__dirname, "../")
}
]
}
};

.storybook/config.js:

import { configure } from '@storybook/vue';
import Vue from 'vue';

const components = require.context('../components', true, /\.vue$/)
const stories = require.context('../components/stories', true, /.stories.js$/)

components.keys().forEach(filename => {
const [, componentName] = filename.match(/([\w-]+)(.vue)/)
Vue.component(componentName, components(filename).default)
})

function loadStories() {
stories.keys().forEach((filename) => req(filename))
};


configure(loadStories, module);

最佳答案

我也遇到了同样的问题,但很难找到解决方案,最后我找到了。

您的 .storybook/webpack.config.js 应如下所示:

module.exports = ({ config }) => {
config.module.rules.push({
test: /\.scss$/,
use: [
'vue-style-loader',
'sass-loader',
{
loader: 'css-loader',
options: {
modules: true,
modules: {
localIdentName: '[hash:base64:6]'
},
},
},
],
});
return config;
}

以下资源对我有帮助:

https://vue-loader.vuejs.org/guide/css-modules.html#using-with-pre-processors (截至 2019 年 11 月,其中部分内容已过时)

https://github.com/rails/webpacker/issues/2197

关于webpack - 将 Nuxt 模块放入 Storybook 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52117692/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com