| 
					
				 | 
			
			
				@@ -4,12 +4,11 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     <ul class="setting"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       <li> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         <span>灰色模式</span> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        <vxe-switch 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          v-model="greyVal" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          open-label="开" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          close-label="关" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-          @change="greyChange" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        ></vxe-switch> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <vxe-switch v-model="greyVal" open-label="开" close-label="关" @change="greyChange"></vxe-switch> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      </li> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      <li> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <span>色弱模式</span> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <vxe-switch v-model="weekVal" open-label="开" close-label="关" @change="weekChange"></vxe-switch> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       </li> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     </ul> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   </panel> 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -23,6 +22,13 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   name: "setting", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   components: { panel }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   setup() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    function toggleClass(flag: boolean, clsName: string, target?: HTMLElement) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      const targetEl = target || document.body; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      let { className } = targetEl; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      className = className.replace(clsName, ""); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      targetEl.className = flag ? `${className} ${clsName} ` : className; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     const localOperate = (key: string, value?: any, model?: string): any => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       model && model === "set" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         ? storageLocal.setItem(key, value) 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -31,29 +37,48 @@ export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     const settings = reactive({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       greyVal: storageLocal.getItem("greyVal"), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      weekVal: storageLocal.getItem("weekVal") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     settings.greyVal === null 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       ? localOperate("greyVal", false, "set") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       : document.querySelector("html")?.setAttribute("class", "html-grey"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    settings.weekVal === null 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      ? localOperate("weekVal", false, "set") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      : document.querySelector("html")?.setAttribute("class", "html-weakness"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     // 灰色模式设置 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     const greyChange = ({ value }): void => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      if (value) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        localOperate("greyVal", true, "set"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        document.querySelector("html")?.setAttribute("class", "html-grey"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        localOperate("greyVal", false, "set"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        document.querySelector("html")?.removeAttribute("class"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-      } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      toggleClass( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        settings.greyVal, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        "html-grey", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        document.querySelector("html") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      ); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      value 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        ? localOperate("greyVal", true, "set") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        : localOperate("greyVal", false, "set"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // 色弱模式设置 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    const weekChange = ({ value }): void => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      toggleClass( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        settings.weekVal, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        "html-weakness", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        document.querySelector("html") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      ); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      value 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        ? localOperate("weekVal", true, "set") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        : localOperate("weekVal", false, "set"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     return { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       ...toRefs(settings), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       localOperate, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       greyChange, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      weekChange 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 </script> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 |