我创建了一个空白的 React 项目,使用命令:npx create-react-appon npm v7.0.7 和 Node v15.0.1
安装:
然后我尝试将空白的 .scss 文件导入 App 组件:
应用程序.js
import './App.scss'
function App() {
return (
<div className="App">
App
</div>
);
}
export default App;
Run Code Online (Sandbox Code Playgroud)
抛出错误:
Failed to compile.
./src/App.scss (./node_modules/css-loader/dist/cjs.js??ref--5-oneOf-6-1!./node_modules/postcss-loader/src??postcss!./node_modules/resolve-url-loader??ref--5-oneOf-6-3!./node_modules/s
ass-loader/dist/cjs.js??ref--5-oneOf-6-4!./src/App.scss)
Error: Node Sass version 5.0.0 is incompatible with ^4.0.0.
Run Code Online (Sandbox Code Playgroud)
包.json
{
"name": "react-17-node-sass-5",
"version": "0.1.0",
"private": true,
"dependencies": {
"@testing-library/jest-dom": "^5.11.5",
"@testing-library/react": "^11.1.0",
"@testing-library/user-event": "^12.1.10",
"node-sass": "^5.0.0",
"react": "^17.0.1",
"react-dom": "^17.0.1",
"react-scripts": "4.0.0",
"web-vitals": "^0.2.4" …Run Code Online (Sandbox Code Playgroud) 刚接触 webpack。试图让 sass-loader 与我的 React 项目一起玩得很好,已经遵循教程。配置似乎正确,但结果总是“无法解析 'sass-loader'”。
我怀疑这是一些非常明显的错误,但我还没有进行多少搜索或谷歌搜索。任何帮助表示赞赏。
错误
ERROR in ./ui/index.js
Module not found: Error: Can't resolve 'sass-loader' in '/root/src'
@ ./ui/index.js 19:0-33
@ multi webpack-hot-middleware/client?reload=true babel-polyfill ./ui/index.js
Run Code Online (Sandbox Code Playgroud)
到目前为止我所做的(在所说的预先存在的反应项目上):
npm i --save-dev node-sass sass-loader
package.json,在 devDependencies 下
"node-sass": "^4.7.2",
"sass-loader": "^6.0.6",
"webpack": "~2.2.1",
"webpack-dev-middleware": "~1.12.0",
"webpack-hot-middleware": "~2.20.0",
"webpack-node-externals": "~1.6.0"
Run Code Online (Sandbox Code Playgroud)
索引.js
import React from 'react';
import ReactDOM from 'react-dom';
import { HashRouter } from 'react-router-dom';
import App from './src/App';
require('./src/styles/main.scss');
ReactDOM.render(<HashRouter><App /></HashRouter>,
document.getElementById('root'));
Run Code Online (Sandbox Code Playgroud)
webpack.config.react.js:
const path = require('path');
const webpack …Run Code Online (Sandbox Code Playgroud)