# 主题管理插件 这是一个简单的主题管理插件,允许用户在浅色模式、深色模式及自定义主题之间切换,并实时调整主题的 CSS 变量。该插件通过加载 JSON 配置文件来管理不同的主题样式,并提供了便捷的界面让用户动态更改颜色。 ## 特性 - **主题切换**:支持切换不同的预设主题(如浅色、深色),也可以通过json自定义主题。 - **自定义主题**:用户可以通过界面实时修改主题的各种颜色(如背景色、文字色、主色、成功色、警告色等)。 - **CSS 变量支持**:所有主题样式通过 CSS 变量管理,支持动态修改。 - **易于集成**:插件通过 JavaScript 模块进行集成,方便与其他项目配合使用。 ## 安装 ### 1. 引入插件 npm下载**themeManager**: ```bash npm i theme-switcher-manager ``` ```js ``` #### demo ```html 主题管理

🎨 主题管理

调整主题变量

当前主题

当前主题:loading...

``` ### 2. 配置 themes.json 文件 在你的项目中创建 themes.json 文件,用于存储预设主题的配置,格式如下: ```json { "light": { "--background-color": "#ffffff", "--text-color": "#333333", "--primary-color": "#007bff", "--secondary-color": "#6c757d", "--border-color": "#dddddd", "--accent-color": "#ff6600", "--success-color": "#28a745", "--warning-color": "#ffc107", "--error-color": "#dc3545", "--shadow-color": "rgba(0, 0, 0, 0.1)" }, "dark": { "--background-color": "#121212", "--text-color": "#ffffff", "--primary-color": "#bb86fc", "--secondary-color": "#03dac6", "--border-color": "#333333", "--accent-color": "#ff4081", "--success-color": "#4caf50", "--warning-color": "#ffeb3b", "--error-color": "#f44336", "--shadow-color": "rgba(0, 0, 0, 0.7)" } } ``` 将 themes.json 文件放置在合适的路径下并在 JavaScript 中加载: ```js loadThemesFromJSON('./themes.json'); ``` ### API 说明 #### loadThemesFromJSON(url) 描述:加载远程或本地的 JSON 配置文件,用于设置主题。 参数:url(string):主题配置 JSON 文件的路径。 返回:无 #### switchTheme(theme) 描述:切换到指定的主题。 参数:theme(string):主题名称(例如:'light', 'dark', 'blue' 等)。 返回:无 #### setThemeVariable(variable, value) 描述:动态设置指定 CSS 变量的值。 参数: variable(string):CSS 变量名(例如:--primary-color)。 value(string):新的 CSS 变量值(例如:#ff6600)。 返回:无 #### onThemeChange(callback) 描述:监听主题变化事件。 参数: callback(function):主题变化时触发的回调函数,接收新的主题名称作为参数。 返回:无