umi中使用scss

在umi中可以直接使用css,但是并不支持scss,我们需要加两个loader,
直接npm安装 node-sass和sass-loader 即可,剩余的事情umi已经帮我们做好了。

npm i --save-dev node-sass sass-loader

 

在src/assets下新建文件夹

- assets
 +  - img
 +  - css
  +   -style.scss  // 这个样式文件一般来说存放全局的样式

  

在src/pages/index.js 引用style.scss

import '../assets/css/style.scss';

  

在home.js同级新建home.scss 文件

.home-container{
    .red{
        color:red;
    }
}

 

在home.js引用,并修改render


// 第一种使用scss方法
// 使用这种方法的时候样式名称不能用 "-" ,不然在使用的时候会报错
...
import homeStyle from './home.scss';
...

...
  render() {
        return (
            <div className={homeStyle.home_container}>
                <p className={homeStyle.red}>Home 页面</p>
            </div>
        );
    }
...

  

 // 第二种使用scss方法
 ... import './home.scss'; ... ... render() { return ( <div className="home_container"> <p className="red">Home 页面</p> </div> ); } ... 

  

用第二种方法的情况:

刷新页面发现并没有变化,打开浏览器调试窗口,查看sources

找到引用的css文件,搜索可以看到好像我们的样式确实是存在的,只不过被加上了其他的后缀(为了保证不会出现全局污染)

ps:这个问题当时我找了好久

 
1.png

这个是umi自己默认加上,我们并不想要这个东西,在.umirc.js文件中添加配置

 

...
cssLoaderOptions:{
  localIdentName:'[local]'
}
...

  

 

转载于:https://www.cnblogs.com/mmykdbc/p/10530383.html

Umi(一个基于React的前端框架)中,多环境配置主要是为了支持开发、测试、生产等多个阶段的不同设置。Umi通过`.umirc.js`(或`.umi.config.js`)文件来管理项目的配置,你可以根据不同环境(如`development`, `production`等)创建不同的配置块。 以下是如何在Umi中进行多环境配置的基本步骤: 1. **创建`.umirc.js`文件**:如果还没有,你需要先初始化一个基本的Umi项目并生成这个文件。 ```js // .umirc.js 或 .umi.config.js module.exports = { // ... }; ``` 2. **添加环境变量**: - 添加默认环境配置: ```js env: { production: process.env.NODE_ENV === &#39;production&#39;, development: !process.env.NODE_ENV || process.env.NODE_ENV === &#39;development&#39;, // 非生产环境即视为开发环境 }, ``` - 根据环境加载对应的配置: ```js plugins: [ [&#39;umi-plugin-react&#39;, { antd: true }], { enable: env.production, path: &#39;@umijs/plugin-prod&#39;, options: {}, }, ], ``` 3. **针对不同环境修改配置**: - 对于开发环境,可以设置更详细的调试选项: ```js develop: { extraBabelPlugins: [[&#39;import&#39;, { libraryName: &#39;antd&#39;, libraryDirectory: &#39;es&#39;, style: true }]], }, ``` - 生产环境可能需要压缩代码和开启性能优化: ```js build: { hash: true, minify: env.production, }, ``` 4. **环境切换**:在运行项目前,可以通过设置`NODE_ENV`环境变量来选择特定的环境。例如: - 开发环境:`npm run dev` - 生产环境打包:`npm run build -- --prod`
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值