- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 create-react-app 引导我的应用程序我想使用 Typescript 和 SASS 进行开发。我之前一直在使用 Angular,我可以轻松地引用 SASS 文件,如下所示:
@Component({
selector: 'unit-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.scss'],
providers: []
})
在 React 中,我尝试像这样导入 SASS 文件:
import s from "./mystyles.scss";
但我收到错误
Cannot find module "./mystyles.scss"
。如何将 SASS 文件导入到 .tsx 文件中?
最佳答案
假设您已成功安装node-sass
在 TypeScript 中 create-react-app
React 应用程序,就像您一样 Add/import a CSS stylesheet通过执行以下操作:
import './mystyles.css';
对于 SCSS 样式表,您只需更改文件类型:
import './mystyles.scss';
在您的示例中,您只需将其视为 Import a module for its side effects only而不是像您当前尝试的那样默认导入。
您也可以将其视为 SCSS Module将 SCSS 文件名更新为 mystyles.module.scss
并按如下方式导入:
import styles as './mystyles.module.scss';
我能够通过执行以下操作来实现这两项功能,因为 react-scripts@2.0.0
中默认内置了 Sass/SCSS 支持。和更高的项目:
npx
create-react-app my-app --template typescript
创建了一个 TypeScript create-react-app npm install --save
node-sass
安装 node-sass App.css
至App.scss
App.tsx
来自import './App.css';
至import './App.scss';
确保您有node-sass
安装。如果这没有帮助,您可能需要重新审视创建/转换 create-react-app
的方式。使用 TypeScript。
您需要将其导入为 import './mystyles.scss';
或者实际上输入 module
在文件名中并将其导入为 import whatever from './mystyles.module.scss';
.
关于reactjs - 如何将 React 与 Typescript 和 SASS 结合使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55071266/
我是一名优秀的程序员,十分优秀!