File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -133,19 +133,29 @@ function EditorComponent() {
133133 DEFAULT_LANGUAGE : selectedLanguage . DEFAULT_LANGUAGE ,
134134 NAME : selectedLanguage . NAME ,
135135 } ) ;
136- const savedCode = localStorage . getItem ( `code-${ currentLanguage } ` ) ;
137- if ( savedCode ) {
136+ const savedCode = localStorage . getItem ( `code-${ selectedLanguage . DEFAULT_LANGUAGE } ` ) ;
137+ if ( savedCode !== null ) {
138138 setCode ( savedCode ) ;
139139 } else {
140140 setCode ( selectedLanguage . HELLO_WORLD ) ;
141141 }
142142 } , [ currentLanguage ] ) ;
143143
144144 useEffect ( ( ) => {
145- if ( code ) {
146- localStorage . setItem ( `code-${ currentLanguage } ` , code ) ;
147- }
148- } , [ code , currentLanguage ] ) ;
145+ if ( isImportingRef . current ) return ;
146+
147+ const handler = setTimeout ( ( ) => {
148+ if ( code ) {
149+ localStorage . setItem ( `code-${ currentLanguage } ` , code ) ;
150+ } else {
151+ localStorage . removeItem ( `code-${ currentLanguage } ` ) ;
152+ }
153+ } , 500 ) ; // 500ms debounce
154+
155+ return ( ) => {
156+ clearTimeout ( handler ) ;
157+ } ;
158+ } , [ code ] ) ;
149159
150160 const handleEditorThemeChange = async ( _ , theme ) => {
151161 if ( [ "light" , "vs-dark" ] . includes ( theme . ID ) ) {
You can’t perform that action at this time.
0 commit comments