在Vue中怎么避免在动态绑定类出现空类的情况
本篇内容介绍了"在Vue中怎么避免在动态绑定类出现空类的情况"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
传递空字符串,这可能会导致 DOM 输出中的类为空。在三元运算符中,我们可以返回"null",这可以确保 DOM 中没有空类?
方案 1:使用空字符串 ''
我们使用三元运算符根据isBold是true还是falsy来有条件地设置适当的类。在下面示例中,如果isBold是 真值,类就被设置为bold。如果是虚值的,它将返回一个空字符串''。
html
js
data() { return { isBold: false } }最终渲染的样子:
如果isBold为true,会被渲染为:
方案 2:使用null
接着,来看看如果我们给类赋值为null会发生什么。
html
js
data() { return { isBold: false } }最终渲染的样子:
如果isBold为true,会被渲染为:
方案 3:使用 undefined
顺便说一句,undefined也可以正常工作 ?
虚值
下面这些是 JS 中的虚值。因此,如果isBold是这些值中的任何一个,它将返回三元运算符的假的情况。
false undefined null NaN 0 "" or '' or `` (empty string)使用对象语法重构
对于上面的事例,使用对象语法会更好一些:
使用三元运算符的一个更好的场景是设置多个类。
使用 && 设置类
我们看看另一个场景,看看它是否有效。
&&不仅是逻辑运算符,它实际上可以产生一个值。因此,如果isBold为真值,则返回bold。但是,如果isBold是虚值,则返回isBold的值。
强调最后一点-它将返回isBold的值。因此,取决于isBold的值是什么,我们原来具有空类的问题仍然存在。让我们看一些例子。
示例 A:isBold等于false
这仍然会渲染空类 ?
示例B:isBold等于null
由于isBold为null,因此空类消失了 。
&&没错-实际上,它只是完成其工作。只是我们需要一个特定的返回值。在其他方面,我们不能渲染空类,我们必须传递null或undefined。除了这两个的任何其他虚值都是不行的。因为这很容易被遗漏,所以我更喜欢更明确的三元运算符,或者只是对象语法?。
空类属性是否错误?
我尝试使用W3C Markup Validation Service进行检查,两种语法确实都可以通过。
......深入到HTML标准: HTML Standard: Empty attribute syntax,它似乎不允许空属性。
但是...
但是这种有效性不适用于id。因为空id被认为是无效的。
.........错误:ID不能为空字符串。
"在Vue中怎么避免在动态绑定类出现空类的情况"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!
运算符 运算 三元 情况 空字符 语法 只是 实际 对象 方案 示例 动态 有效 内容 场景 实际上 属性 更多 样子 真值 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 企业服务器系统 工作手册软件开发部 并放入数据库文件组语句 软件开发流程图 权威 互联网服务器攻防 国家安全观下的网络安全 计算机网络技术三级电子教材 三级分销软件开发杭州 网信办公室网络安全环境检查 服务器 设置双ip nosql数据库延伸的产品 知网数据库文件 计算机网络技术趋势范文 网络安全的小故事事例 软件开发项目评标规则 添加到数据库1064 dnf服务器关闭其他区还能进吗 杭州微商软件开发公司 长春市大型软件开发有限公司 内网服务器安全检测 同在互联网科技 人数 海南华天科技软件开发公司电话 网络安全测试工作简历怎么写 泰安程鼎网络技术 龙之谷没有服务器列表 r for循环添加数据库 数据库能联网查询吗 tsn时钟服务器 代签名封装app软件开发 安卓软件开发要会什么