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 }]"
相关推荐
咖啡の猫27 分钟前
Vue内置指令与自定义指令
前端·javascript·vue.js
哆啦A梦15888 小时前
搜索页面布局
前端·vue.js·node.js
_院长大人_9 小时前
el-table-column show-overflow-tooltip 只能显示纯文本,无法渲染 <p> 标签
前端·javascript·vue.js
SevgiliD9 小时前
el-table中控制单列内容多行超出省略及tooltip
javascript·vue.js·elementui
哆啦A梦158810 小时前
axios 的二次封装
前端·vue.js·node.js
阿珊和她的猫10 小时前
深入理解与手写发布订阅模式
开发语言·前端·javascript·vue.js·ecmascript·状态模式
爱看书的小沐11 小时前
【小沐杂货铺】基于Three.js渲染三维风力发电机(WebGL、vue、react、WindTurbine)
javascript·vue.js·webgl·three.js·opengl·风力发电机·windturbine
罚时大师月色13 小时前
Vue+ts 如何实现父组件和子组件通信
javascript·vue.js·ecmascript
fury_12314 小时前
vue3:数组的.includes方法怎么使用
前端·javascript·vue.js