refactor: 修改加载配色方案事件为loadColorScheme

pull/81/head
moonrailgun 4 years ago
parent d33d781264
commit de29cfe259

@ -1,4 +1,4 @@
import React, { useCallback, useContext } from 'react'; import React, { useContext, useEffect } from 'react';
import { useStorage } from 'tailchat-shared'; import { useStorage } from 'tailchat-shared';
import { parseColorScheme } from '../../web/src/utils/color-scheme-helper'; import { parseColorScheme } from '../../web/src/utils/color-scheme-helper';
import { sharedEvent } from '../event'; import { sharedEvent } from '../event';
@ -16,18 +16,14 @@ const ColorSchemeContext = React.createContext<{
ColorSchemeContext.displayName = 'ColorSchemeContext'; ColorSchemeContext.displayName = 'ColorSchemeContext';
export const ColorSchemeContextProvider: React.FC = React.memo((props) => { export const ColorSchemeContextProvider: React.FC = React.memo((props) => {
const [colorScheme = 'dark', { save: saveColorScheme }] = useStorage( const [colorScheme = 'dark', { save: setColorScheme }] = useStorage(
'colorScheme', 'colorScheme',
'dark' 'dark'
); );
const setColorScheme = useCallback( useEffect(() => {
(colorScheme: string) => { sharedEvent.emit('loadColorScheme', colorScheme);
sharedEvent.emit('changeColorScheme', colorScheme); }, [colorScheme]);
saveColorScheme(colorScheme);
},
[saveColorScheme]
);
return ( return (
<ColorSchemeContext.Provider value={{ colorScheme, setColorScheme }}> <ColorSchemeContext.Provider value={{ colorScheme, setColorScheme }}>

@ -7,7 +7,7 @@ export interface SharedEventMap {
/** /**
* *
*/ */
changeColorScheme: (scheme: string) => void; loadColorScheme: (scheme: string) => void;
} }
export type SharedEventType = keyof SharedEventMap; export type SharedEventType = keyof SharedEventMap;

Loading…
Cancel
Save