index.tsx 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. import { createRoot } from 'react-dom/client'
  2. import { RouterProvider } from 'react-router';
  3. import { QueryClient, QueryClientProvider } from '@tanstack/react-query';
  4. import { App as AntdApp , ConfigProvider} from 'antd'
  5. import dayjs from 'dayjs';
  6. import weekday from 'dayjs/plugin/weekday';
  7. import localeData from 'dayjs/plugin/localeData';
  8. import 'dayjs/locale/zh-cn';
  9. import zhCN from 'antd/locale/zh_CN';
  10. import { AuthProvider } from './hooks/AuthProvider';
  11. import { router } from './routes';
  12. // 配置 dayjs 插件
  13. dayjs.extend(weekday);
  14. dayjs.extend(localeData);
  15. // 设置 dayjs 语言
  16. dayjs.locale('zh-cn');
  17. // 创建QueryClient实例
  18. const queryClient = new QueryClient();
  19. // 应用入口组件
  20. const App = () => {
  21. return (
  22. <QueryClientProvider client={queryClient}>
  23. <ConfigProvider locale={zhCN} theme={{
  24. token: {
  25. colorPrimary: '#1890ff',
  26. borderRadius: 4,
  27. colorBgContainer: '#f5f5f5',
  28. },
  29. components: {
  30. Button: {
  31. borderRadius: 4,
  32. },
  33. Card: {
  34. borderRadius: 6,
  35. boxShadow: '0 2px 8px rgba(0, 0, 0, 0.08)',
  36. }
  37. }
  38. }}>
  39. <AntdApp>
  40. <AuthProvider>
  41. <RouterProvider router={router} />
  42. </AuthProvider>
  43. </AntdApp>
  44. </ConfigProvider>
  45. </QueryClientProvider>
  46. )
  47. };
  48. const rootElement = document.getElementById('root')
  49. if (rootElement) {
  50. const root = createRoot(rootElement)
  51. root.render(
  52. <App />
  53. )
  54. }