我有一个关于故事书的问题。我不能启动故事书,我有一个关于我的SCSS文件的错误。
这是一个错误:
ModuleParseError:模块解析失败:意外的标记(1:0)
您可能需要一个适当的加载程序来处理此文件类型,目前没有加载程序配置为处理此文件。请参阅https://webpack.js.org/concepts#loaders {|颜色:红色;|地址:/myproject/node_modules/@storybook/builder-webpack4/node_modules/webpack/lib/NormalModule.js:469:19
我的意思是这只是一个简单的类,但是当文件是空的时候,编译是可以的,所以我不明白我怎么能解决这个问题。
我的SCSS文件
.h1 {
color: red;
}
字符串
我的Webpack文件
const webpack = require('webpack');
const path = require('path');
module.exports = {
mode: 'development',
entry: path.resolve(__dirname, './src/index.js'),
module: {
rules: [
{
test: /\.(js|jsx)$/,
exclude: /node_modules/,
use: ['babel-loader'],
},
{
test: /\.scss?$/,
exclude: /node_modules/,
use: ['style-loader', 'css-loader', 'sass-loader']
},
{
test: /\.(png|jpe?g|gif)$/i,
loader: 'file-loader',
options: {
name: '[path][name].[ext]',
},
},
],
},
resolve: {
extensions: ['*', '.js', '.jsx'],
},
output: {
path: path.resolve(__dirname, './dist'),
filename: 'bundle.js',
},
plugins: [new webpack.HotModuleReplacementPlugin()],
devServer: {
contentBase: path.resolve(__dirname, './dist'),
hot: true,
},
};
型
.storybook文件夹中的main.js文件
module.exports = {
"stories": [
"../src/**/*.stories.mdx",
"../src/**/*.stories.@(js|jsx|ts|tsx)",
"../src/**/**/*.stories.@(js|jsx|ts|tsx)"
],
"addons": [
"@storybook/addon-links",
"@storybook/addon-essentials"
]
}
型
有没有人有解决办法?提前谢谢
2条答案
按热度按时间gijlo24d1#
最后,我解决了我的问题,这就是我是如何做到的。
首先,我重新安装了故事书(How to remove storybook from the react project),然后通过webpack(https://storybook.js.org/blog/storybook-for-webpack-5/)重新安装。有一次,使用Webpack可以工作,而使用NPM(或Yarn)安装它给我带来了我上面发布的复杂性。我的猜测是,它适用于Webpack 5,而使用NPM,我得到了一个关于css-loader loader的错误,告诉我关于Webpack 4。
Storybook工作了,但我仍然担心
.scss
文件。我的终端告诉我,我没有一个特定的加载器。所以我通过在安装Storybook时创建的.storybook
文件夹中添加webpack.config.js
来为这种类型的文件加载器。我使用了这里找到的说明:https://storybook.js.org/docs/react/configure/webpack关于Sass文件:Storybook是区分大小写的,并且也不考虑以
_
开头的文件,因此不可能使用部分我希望你没有这样的问题,但如果你有,也许这些答案会帮助你^^
zhte4eai2#
对我来说,我不必遵循上面的步骤,但我确实需要调整
preview.ts
中的import语句,如下所示:字符串