vue:如何配置 sass 提供页面换肤功能

发布于 2022-09-07 07:28:27 字数 79 浏览 10 评论 0

需求大概是这样的:
页面有三个版本,不同版本有不同的主题色以及背景图,如何在vue中配置sass,打包完成以后,根据后台传递参数,修改皮肤

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

梦幻的心爱 2022-09-14 07:28:27

后台传参数,大概的意思是不是用户可以个性化配置,主题色和背景单独写一个sass,可以在new一个vm实例之前使用Vue.http 请求一个主题参数,在入口文件中可以用 if()条件的方式require

        var axios_instance = axios.create({
            transformRequest: [function(data) {
                data = Qs.stringify(data);
                return data;
            }],
            headers: { 'Content-Type': 'application/x-www-form-urlencoded' }
        })
        Vue.prototype.$http = axios;
        Vue.use(VueAxios, axios_instance);
        
        Vue.use(Vuex);
        Vue.axios.get('https://api.douban.com/v2/book/search', {
            params: { //请求参数,接口是借用豆瓣的开放api
                q: 'java' 
            }
        }).then(res => {
            if (res.status == 200) { //条件根据用户的配置来调整
                require('./.../theme.sass'); // 引用sass
            }
        })
        const vm = new Vue({
            el: '#app',
            router,
            store,
            render: h => h(App)
        });

亲测通过,引用的代码有点多

甜心 2022-09-14 07:28:27

gulp 根据sass 配置文件 也就是 颜色全局变量, 打包出三套皮肤,线上代码动态切换link src

窗影残 2022-09-14 07:28:27

有插件呢吧应该

一百个冬季 2022-09-14 07:28:27

只要用的是webpack构建,基本上都可以用webpack-theme-color-replacer这个插件实现动态换肤:
动态切换主题色

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文