在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安全错误 数据库的锁怎样保障安全 鸿蒙主题软件开发 网络安全的发展方案 数据库行之间关系是什么约束 计算机论文网络技术 六安服务器机柜厂 电商数据的软件开发 计算机网络技术所有缩写 汕头市华辰网络技术有限公司 网络安全的可见性 云服务器ubuntu默认用户名 mc服务器地图获取 徐州网络安全招标 体育馆服务器 土木工程跨考大数据库 一台服务器接几个网线 快速学习嵌入式软件开发 一份网络安全手抄报图片 网络安全课件背景图 超视网络技术 text绑定数据库 换流站网络安全防护的要求 软件开发服务与销售软件 星际战甲大蜘蛛服务器 杭州野马网络技术有限公司 软件开发行业贝塔值 下列属于保护网络安全措施 湖南企业软件开发价格大全 徐州网络安全招标 高职扩招计算机网络技术难吗 数据库保存乱码