gpt4 book ai didi

javascript - 在 Python 和使用 create-react-app 创建的 React 项目之间共享配置文件

转载 作者:行者123 更新时间:2023-11-28 03:56:57 25 4
gpt4 key购买 nike

我需要在 Python 和 React 代码之间共享一个配置文件 - 我可以使用 JSON,它很容易导入到每个文件中,但我更希望能够添加注释、打开和关闭部件等。

做这样的事情有什么好方法吗?

最佳答案

我一直在尝试HJSON (human-readable JSON) ,但是如果不弹出 create-react-app 并修改 webpack 配置以使用 raw-loader ,将 HJSON 这样的文本文件捆绑到 React 构建中是行不通的。 ,或使用 react-app-rewired做类似的事情。

我最终使用了 react-app-rewired -

首先将这些库添加到React项目中 -

yarn add react-app-rewired
yarn add hjson
yarn add hjson-loader

然后将 config-overrides.js 文件添加到 React 项目的顶层 - 这将动态修改 webpack 配置 -

const { getLoader } = require('react-app-rewired');

function rewireAddHjson(config, env, options = {}) {
const hjsonExtension = /\.hjson$/;
const excludeRule = getLoader(config.module.rules, rule => rule.exclude);
excludeRule.exclude.push(hjsonExtension);
const hjsonRule = {
test: hjsonExtension,
loader: 'hjson-loader',
};
config.module.rules.push(hjsonRule);
return config;
}

module.exports = function override(config, env) {
config = rewireAddHjson(config, env);
return config;
};

并在package.json中将“react-scripts”替换为“react-app-rewired”:

"scripts": {
- "start": "react-scripts start",
- "build": "react-scripts build",
- "test": "react-scripts test --env=jsdom",
+ "start": "react-app-rewired start",
+ "build": "react-app-rewired build",
+ "test": "react-app-rewired test --env=jsdom"
}

然后在Python中你可以说

import hjson
with open('app/client/src/assets/options.hjson') as f:
options = hjson.load(f)

在 React 中可以这样说

import options from '../assets/options.hjson'; // a json object

关于javascript - 在 Python 和使用 create-react-app 创建的 React 项目之间共享配置文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47487014/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com