我试图在使用Parcel.js构建变量时公开一个变量,类似于Webpack DefinePlugin,但我还没有找到如何实现它。
在开发中,我希望我的API主机不同于我的生产主机,因此:
//development:
API_URL="http://localhost:8900/"
//production:
API_URL="/"目前,Parcel支持module.hot交换机,因为热模块重新加载只能在开发中启用,所以我可能会滥用它,但是最好有一个更好的方法。
我也可以检查window.location.hostname是否是localhost,但这是一个解决办法。
发布于 2018-02-12 16:07:55
对于那些仍在寻求答案的人来说:
您可以使用Parcel.js的.env文件支持(通过dotenv包),加入1.5.0 (2018-01-23)。
不需要额外的配置。只需使您的.env文件被适当的NODE_ENV (生产、开发等)分隔,您就可以通过process.env.VARIABLE_NAME访问变量。就你而言,你可以:
.env.development
API_URL=http://localhost:8900/.env.production
API_URL=/然后根据需要在代码中调用process.env.API_URL (不再需要导入)来使用它。
https://stackoverflow.com/questions/48009893
复制相似问题