廓形仪rn版本-技术调研
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

19 lines
551 B

  1. export const script = (mode: string) => {
  2. const documentElement = document.documentElement;
  3. function getSystemColorMode() {
  4. return window.matchMedia('(prefers-color-scheme: dark)').matches
  5. ? 'dark'
  6. : 'light';
  7. }
  8. try {
  9. const isSystem = mode === 'system';
  10. const theme = isSystem ? getSystemColorMode() : mode;
  11. documentElement.classList.remove(theme === 'light' ? 'dark' : 'light');
  12. documentElement.classList.add(theme);
  13. documentElement.style.colorScheme = theme;
  14. } catch (e) {
  15. console.error(e);
  16. }
  17. };