| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| |
|
| |
|
| | import React, { useEffect, useState } from 'react';
|
| | import { Card, Spin } from '@douyinfe/semi-ui';
|
| | import SettingsPerformance from '../../pages/Setting/Performance/SettingsPerformance';
|
| | import { API, showError, toBoolean } from '../../helpers';
|
| |
|
| | const PerformanceSetting = () => {
|
| | let [inputs, setInputs] = useState({
|
| | 'performance_setting.disk_cache_enabled': false,
|
| | 'performance_setting.disk_cache_threshold_mb': 10,
|
| | 'performance_setting.disk_cache_max_size_mb': 1024,
|
| | 'performance_setting.disk_cache_path': '',
|
| | });
|
| |
|
| | let [loading, setLoading] = useState(false);
|
| |
|
| | const getOptions = async () => {
|
| | const res = await API.get('/api/option/');
|
| | const { success, message, data } = res.data;
|
| | if (success) {
|
| | let newInputs = {};
|
| | data.forEach((item) => {
|
| | if (typeof inputs[item.key] === 'boolean') {
|
| | newInputs[item.key] = toBoolean(item.value);
|
| | } else {
|
| | newInputs[item.key] = item.value;
|
| | }
|
| | });
|
| | setInputs(newInputs);
|
| | } else {
|
| | showError(message);
|
| | }
|
| | };
|
| |
|
| | async function onRefresh() {
|
| | try {
|
| | setLoading(true);
|
| | await getOptions();
|
| | } catch (error) {
|
| | showError('刷新失败');
|
| | } finally {
|
| | setLoading(false);
|
| | }
|
| | }
|
| |
|
| | useEffect(() => {
|
| | onRefresh();
|
| | }, []);
|
| |
|
| | return (
|
| | <>
|
| | <Spin spinning={loading} size='large'>
|
| | {/* 性能设置 */}
|
| | <Card style={{ marginTop: '10px' }}>
|
| | <SettingsPerformance options={inputs} refresh={onRefresh} />
|
| | </Card>
|
| | </Spin>
|
| | </>
|
| | );
|
| | };
|
| |
|
| | export default PerformanceSetting;
|
| |
|