import intl from 'react-intl-universal'; import React, { useState, useEffect, useRef } from 'react'; import { Button, InputNumber, Form, message, Input, Alert } from 'antd'; import config from '@/utils/config'; import { request } from '@/utils/http'; import './index.less'; import Ansi from 'ansi-to-react'; import pick from 'lodash/pick'; const dataMap = { 'dependence-proxy': 'dependenceProxy', 'node-mirror': 'nodeMirror', 'python-mirror': 'pythonMirror', 'linux-mirror': 'linuxMirror', }; const Dependence = () => { const [systemConfig, setSystemConfig] = useState<{ dependenceProxy?: string; nodeMirror?: string; pythonMirror?: string; linuxMirror?: string; }>(); const [form] = Form.useForm(); const [log, setLog] = useState(''); const getSystemConfig = () => { request .get(`${config.apiPrefix}system/config`) .then(({ code, data }) => { if (code === 200 && data.info) { setSystemConfig(data.info); } }) .catch((error: any) => { console.log(error); }); }; const updateSystemConfigStream = (path: keyof typeof dataMap) => { setLog('执行中...'); request .put( `${config.apiPrefix}system/config/${path}`, pick(systemConfig, dataMap[path]), { responseType: 'stream', }, ) .then((res) => { setLog(() => res); }) .catch((error: any) => { console.log(error); }); }; const updateSystemConfig = (path: keyof typeof dataMap) => { setLog(''); request .put( `${config.apiPrefix}system/config/${path}`, pick(systemConfig, dataMap[path]), ) .then(({ code, data }) => { if (code === 200) { message.success(intl.get('更新成功')); } }) .catch((error: any) => { console.log(error); }); }; useEffect(() => { getSystemConfig(); }, []); return (
{ setSystemConfig({ ...systemConfig, dependenceProxy: e.target.value, }); }} /> { setSystemConfig({ ...systemConfig, nodeMirror: e.target.value, }); }} /> { setSystemConfig({ ...systemConfig, pythonMirror: e.target.value, }); }} /> { setSystemConfig({ ...systemConfig, linuxMirror: e.target.value, }); }} />
        {log}
      
); }; export default Dependence;