我使用 Node.js v16.13.1 并创建了一个 React 应用程序。我尝试使用Sass,但是当我尝试运行它时,出现以下错误:
Node Sass 版本 7.0.0 与 ^4.0.0 || 不兼容 ^5.0.0 || ^6.0.0
你好我有以下错误,我在vuejs中有一个应用程序,它运行良好,错误突然出现,重新安装了所有东西,清理缓存,我找不到解决方法,希望你的帮助
错误:规则中只能有一个资源源(提供的资源和测试+包含+排除)
"exclude": [
null
],
"use": [
{
"loader": "/Users/juanpablo/front-treatments/node_modules/cache-loader/dist/cjs.js",
"options": {
"cacheDirectory": "/Users/juanpablo/front-treatments/node_modules/.cache/babel-loader",
"cacheIdentifier": "81fef5a6"
},
"ident": "clonedRuleSet-38[0].rules[0].use[0]"
},
{
"loader": "/Users/juanpablo/front-treatments/node_modules/babel-loader/lib/index.js",
"options": "undefined",
"ident": "undefined"
}
]
} ````
A complete log of this run can be found in:
0 info it worked if it ends with ok
1 verbose cli [
1 verbose cli '/Users/juanpablo/.nvm/versions/node/v12.19.0/bin/node',
1 verbose cli '/Users/juanpablo/.nvm/versions/node/v12.19.0/bin/npm',
1 verbose cli 'run',
1 verbose cli 'serve'
1 verbose cli ]
2 info using npm@6.14.8
3 …Run Code Online (Sandbox Code Playgroud) 所以,在用于npm install node-sass我的reactjs项目之前我已经使用过sass。我现在正在做一个新项目,想再次使用 sass。使用相同的语法npm install node-sass来安装它,我继续得到
./src/components/Main.scss (./node_modules/css-loader??ref--6-oneOf-5-1!./node_modules/postcss-loader/src??postcss!./node_modules/react-scripts/node_modules/sass-loader/lib/loader.js??ref--6-oneOf-5-3!./src/components/Main.scss)
Error: Node Sass version 8.0.0 is incompatible with ^4.0.0.
Run Code Online (Sandbox Code Playgroud)
或者
to import sass files, you first need to install node-sass. run `npm install node-sass` or `yarn add node-sass` inside your workspace
...
...
Run Code Online (Sandbox Code Playgroud)
我按照说明使用这些语法从链接npmjs sass-lang安装了 sass
brew install sass/sass/sass
Run Code Online (Sandbox Code Playgroud)
npm install -g sass
Run Code Online (Sandbox Code Playgroud)
但我仍然遇到我之前提到的错误。
我尝试删除节点模块文件夹、package-lock.json 并重新安装节点模块。那仍然没有修复错误。另外,我还关注了其他人如何修复 Node Sass 版本 5.0.0||6.0.0|| 7.0.0 不兼容问题但这并没有解决我的问题。
我现在正在寻求帮助。
我是 Storybook 的新手。
我有一个.scss用于全局的文件。我想从故事书中导入这个文件。
所以我制作了 .storybook/config.js 文件并在里面导入了 scss 。但它显示了我的错误。
ERROR in ./styles/style.scss (./node_modules/css-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./node_modules/style-loader/dist/cjs.js!./node_modules/css-loader/dist/cjs.js!./node_modules/postcss-loader/src!./node_modules/sass-loader/dist/cjs.js!./node_modules/sas
s-resources-loader/lib/loader.js!./styles/style.scss)
Module build failed (from ./node_modules/sass-loader/dist/cjs.js):
SassError: Invalid CSS after "v": expected 1 selector or at-rule, was 'var api = require("'
on line 1 of C:\Users\Walter\WebstormProjects\closet-next\styles\style.scss
>> var api = require("!../node_modules/style-loader/dist/runtime/injectStylesIn
^
@ ./styles/style.scss 2:26-346 43:4-64:5 46:18-338
@ ./.storybook/config.js
@ multi ./node_modules/@storybook/core/dist/server/common/polyfills.js ./node_modules/@storybook/core/dist/server/preview/globals.js ./node_modules/@storybook/addon-docs/dist/frameworks/common/config.js ./node_modules/@storybook/addon-docs/dist/frameworks/react/config.js ./.
storybook/config.js ./node_modules/@storybook/addon-knobs/dist/preset/addDecorator.js ./.storybook/generated-entry.js (webpack)-hot-middleware/client.js?reload=true&quiet=true
Run Code Online (Sandbox Code Playgroud)
什么是问题?这是 main.js
const path = require('path');
module.exports = {
stories: ['../stories/**/*.stories.(js|mdx|tsx)'],
addons: [ …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用 Vue 2 启动并运行一个应用程序,一切都很好,直到我尝试使用node-sass和sass-loader软件包。我开始出现错误,经过调查,看起来我需要使用webpack5+ 才能使最新的node-sass软件包正常工作。经过一番研究后发现,当我创建项目时,它默认webpack版本为 4.46.0。
我vue-cli按照官方页面上的说明将我的版本更新到最新版本,然后尝试重新初始化一个新项目,但仍然遇到同样的问题。目前,我有@vue/cli 4.5.12看起来是最新的(我认为)。
我正在初始化应用程序vue create <app-name>并使用默认配置。我确实找到了这个页面,上面写着“从 v4 迁移”,这可能意味着可能有更高版本,vue-cli但我再次遵循所有说明却无济于事,所以不确定我是否只是在这里遗漏了一些东西。
我是 Vue 的新手,不确定我应该提供哪些附加信息来使其有用,但我已经搜索遍了,但我无法弄清楚发生了什么。
问题
在使用 Storybook 时,我正在运行npm run storybook并收到以下错误。
ModuleBuildError: Module build failed (from ./node_modules/style-loader/dist/cjs.js):
TypeError: this.getOptions is not a function
Run Code Online (Sandbox Code Playgroud)
背景/上下文
我的目标是让 Storybook 能够使用sass.
设置很简单:我有scss由组件文件导入的文件。
在寻找实现此目的的方法时,我遇到了一个可以这样做的插件,请参阅此. 本质上,您可以运行npm i --save-dev @storybook/preset-scss style-loader css-loader sass-loader.
这样做时,我遇到了第一个错误。这是同样的错误,但对于sass-loader. 这个Stack Overflow 线程帮助我修复了这个错误。
所以,我想总而言之,我已经尝试过:
相关的开发依赖
"@storybook/preset-scss": "^1.0.3",
"css-loader": "^6.2.0",
"sass-loader": "^10.1.1",
"style-loader": "^3.2.1"
Run Code Online (Sandbox Code Playgroud)
提前致谢!
javascript ×4
webpack ×3
reactjs ×2
storybook ×2
node-modules ×1
node-sass ×1
node.js ×1
sass ×1
vue.js ×1
vuejs2 ×1