vue3 通过变量的值,来动态的进行class的赋值

1、需求:不同的设备因为宽度不一样,所以要做一些调整,但是通过tailwindcss的设置并不能满足我们的条件:

现在手机的屏幕大小也很大,设置了xl,发现电脑动,手机也在动,一样的效果。

2、通过上一篇的自定义isMobile来进行设置即可:

复制代码
const isMobile = computed(() => checkDevice()

const checkDevice = () => {
    return  navigator.userAgent.match(
      /(phone|pad|pod|iPhone|iPod|ios|iPad|Android|Mobile|BlackBerry|IEMobile|MQQBrowser|JUC|Fennec|wOSBrowser|BrowserNG|WebOS|Symbian|Windows Phone)/i,
    );
  };

3、template中我们这么写:

复制代码
:class="{ '-ml-10 p-2': isMobile }"

语法:

:class = "" 中间是一个对象:{ '-ml-10 p-2': isMobile },其中:前面是className,后面是表达式,可以有多个。

多个变量以数组展示:

复制代码
:class="[{ '-ml-10 p-2': isMobile },{ 'ml-10 p-2': isMobile2 }]"
相关推荐
java1234_小锋11 小时前
Vue3专题 - 组件基础
vue.js·vite
阿懂在掘金17 小时前
同一份弹窗我重构了三次:从 v-model 地狱到路由式调用,终于治好了模板臃肿
前端·vue.js·前端框架
小锋java123418 小时前
【技术专题】Vue3 - 生命周期
vue.js·vite
Highcharts.js19 小时前
Vue 3 + Highcharts Boost 可视化加速模块的完整示例
javascript·vue.js·可视化·boost·highcharts·图表渲染·加速模块
夏幻灵20 小时前
从语法坑点到 JS 内存底层:Vue 3 watch 侦听器深度全解
开发语言·javascript·vue.js
Sterting20 小时前
反馈组件:对话框、消息与通知
前端·javascript·vue.js
书中枫叶21 小时前
做了个「句拾」小程序,最难的不是业务,是字体
前端·javascript·vue.js
新时代牛马1 天前
Vue.js 响应式原理详解
前端·javascript·vue.js
满栀5851 天前
vue3动态路由详细效果
前端·javascript·vue.js·typescript·前端框架
山荷枝1 天前
05-Vue
前端·javascript·vue.js