npm 文件夹构建中的dotenv

bttbmeg0  于 2023-08-06  发布在  其他
关注(0)|答案(1)|浏览(101)

我在React js项目中有一个.env,我希望当我NPM运行build时,.env会转到build文件夹,这可能吗?如果是,我该怎么做,如果不是,解决方案是什么?
我试过使用
“build”:“cp .env.template build/.env && react-scripts build”
但结果是dotenv无法进入build文件夹

yr9zkbsy

yr9zkbsy1#

1.在项目目录中创建一个单独的config.js文件,其中包含环境变量。

const config = {
  API_URL: process.env.REACT_APP_API_URL,
}

export default config;

字符串
1.将config.js文件导入react组件并访问环境变量。

import React from 'react';

import config from './config';

function App() {
  const apiUrl = config.API_URL;

  return <div>...</div>;
}
export default App;


1.在项目的根目录中创建自定义构建脚本,例如build.js。

const fs = require('fs');
const path = require('path');
const { execSync } = require('child_process');

// Copy the config.js file to the build folder
fs.copyFileSync(
  path.resolve(__dirname, 'src', 'config.js'),
  path.resolve(__dirname, 'build', 'config.js')
);

// Run the build script
execSync('react-scripts build', { stdio: 'inherit' });


1.修改package.json文件以使用自定义构建脚本

"scripts": {
  "build": "node build.js"
}

相关问题