Reactjs 我应该在哪里为React组件库添加配置文件
我正在编写一个React组件库,我想发布到npm 使用该库需要几个配置 我应该建议用户创建一个.env文件,还是使用上下文API将数据传递给应用程序,还是有一个完全独立的选项我没有考虑 现在我只有一个名为RegistrationDetails.js的文件Reactjs 我应该在哪里为React组件库添加配置文件,reactjs,npm,Reactjs,Npm,我正在编写一个React组件库,我想发布到npm 使用该库需要几个配置 我应该建议用户创建一个.env文件,还是使用上下文API将数据传递给应用程序,还是有一个完全独立的选项我没有考虑 现在我只有一个名为RegistrationDetails.js的文件 domain: '', // Example: images.mysite.com ssl: true, // HTTPS or HTTP }; export default RegistrationDetails; 我把它导入到主
domain: '', // Example: images.mysite.com
ssl: true, // HTTPS or HTTP
};
export default RegistrationDetails;
我把它导入到主组件中。我不希望用户必须进入node_模块才能更新此配置文件
这就是我使用配置的方式
const { domain } = RegistrationDetails;
const secure = RegistrationDetails.ssl ? 'https://' : 'http://';
const imgSrc = buildUrl(src, options);
const renderUrl = secure + domain + imgSrc;
我建议您使用
.env
文件。
从
警告:不要在React应用程序中存储任何机密(如私有API密钥)
环境变量嵌入到构建中,这意味着任何人都可以通过检查应用程序的文件来查看它们
拥有.env
文件的好处是,您不必导入任何内容。即使在HTML
文件中,.env
文件中的变量也可用于应用程序
.env
文件中的变量是常量
,因此命名约定为大写
在项目目录的根目录中创建一个.env
文件,
您必须创建以REACT\u APP\u
开头的自定义环境变量。create react app
工具使用react\u app
来识别这些变量
REACT_APP_DOMAIN = //Domain_Name
REACT_APP_SSL = true
这些环境变量将在process.env
上为您定义。例如,名为REACT\u APP\u SSL
的环境变量将作为process.env.REACT\u APP\u SSL
在JS中公开
const secure = process.env.REACT_APP_SSL ? 'https://' : 'http://';
您还可以在public/index.html
<title>%REACT_APP_DOMAIN%</title>
%REACT\u APP\u DOMAIN%
最后,将.env
文件添加到您的.gitignore
文件中,以便Git
忽略它,并且它不会推到GitHub
注意:更改.env
文件后,需要重新启动开发服务器
我建议您使用
.env
文件。
从
警告:不要在React应用程序中存储任何机密(如私有API密钥)
环境变量嵌入到构建中,这意味着任何人都可以通过检查应用程序的文件来查看它们
拥有.env
文件的好处是,您不必导入任何内容。即使在HTML
文件中,.env
文件中的变量也可用于应用程序
.env
文件中的变量是常量
,因此命名约定为大写
在项目目录的根目录中创建一个.env
文件,
您必须创建以REACT\u APP\u
开头的自定义环境变量。create react app
工具使用react\u app
来识别这些变量
REACT_APP_DOMAIN = //Domain_Name
REACT_APP_SSL = true
这些环境变量将在process.env
上为您定义。例如,名为REACT\u APP\u SSL
的环境变量将作为process.env.REACT\u APP\u SSL
在JS中公开
const secure = process.env.REACT_APP_SSL ? 'https://' : 'http://';
您还可以在public/index.html
<title>%REACT_APP_DOMAIN%</title>
%REACT\u APP\u DOMAIN%
最后,将.env
文件添加到您的.gitignore
文件中,以便Git
忽略它,并且它不会推到GitHub
注意:更改.env
文件后,需要重新启动开发服务器
感谢您详细解释我为什么要使用.env文件。我想这就是我将要采用的方法。感谢您详细解释我为什么要使用.env文件。我想这就是我要采用的方法。