我有一个配置文件,其存储与例如APP_NAME,版本,records_per_page等应用程序的通用设置。
我想在所有组件中使用此设置。一种方法是将其导出到组件中,但是如果有20个组件,则必须将其导入所有组件中。
有没有办法避免这种情况,所以我只是有一次,某个地方的配置文件,我可以在任何组件访问它。
答案 0 :(得分:0)
<强>的一种方法:强>
是react context api
reactjs.org/docs/context.html,这使组件可以“查看”变量,而不必每次都导入它们。
<强>第二种方式:强>
通过env
在webpack中使用DefinePlugin
变量:
webpack.cofig.js
const PACKAGE = require('package.json');
new webpack.DefinePlugin({
VERSION: JSON.stringify(PACKAGE.version),
IS_DEBUG_ENV: process.env.NODE_ENV === 'debug',
SOME_VAR: true,
}),
在某些组件中的用法:
import * as React from "react";
export class View extends React.Component {
render() {
return (
<div>
{SOME_VAR ? "hoooray" : ":("}
</div>
);
}
}
请注意,没有SOME_VAR
的导入