首页 > 解决方案 > 为什么 React 条件导入仅适用于开发环境,但不适用于生产环境

问题描述

我创建了一个反应应用程序,并在我的项目中有这部分代码:

componentWillMount(){
  if(Constantes.CURSO === 'POS') {
    require('./posgraduacao_exclusivo.scss')
  } 
}

当我使用“npm start”在我的机器上运行它时,它运行良好,在这种情况下,“Constantes.CURSO”的值为“GRADUACAO”,if 条件为 false 并且行“require('./posgraduacao_exclusivo .scss')" 没有被调用。

但是当我使用 npm run build 来创建构建产品时,它就不能正常工作了。即使 if 条件为假,也会调用“require('./posgraduacao_exclusivo.scss')”行。

为什么会这样?我该如何解决这个问题?

更新:

这是我的 Constantes.js 文件

//export const AMBIENTE = "DESENVOLVIMENTO"
//export const AMBIENTE = "PRODUCAO"
export const CURSO = "GRADUACAO"
//export const CURSO = "POS"
//export const CORS = "https://cors-anywhere.herokuapp.com/"
export const CORS = "http://127.0.0.1:8091/"
//---------------FIXED VALUES-----------------//
export const URL_INIT = "https://pucminas.instructure.com/api/v1"
export const URL_PREFIX = CORS + URL_INIT
export const PER_PAGE_VALUE = 25

我需要更改变量“CURSO”(注释和取消注释),因为我使用 2 种不同的设置。

标签: reactjs

解决方案


推荐阅读