返回顶部
首页 > 资讯 > 前端开发 > JavaScript >怎么避免在Vue中使用null作为class的空值
  • 383
分享到

怎么避免在Vue中使用null作为class的空值

2024-04-02 19:04:59 383人浏览 薄情痞子
摘要

本篇内容主要讲解“怎么避免在Vue中使用null作为class的空值”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么避免在Vue中使用null作为class的

本篇内容主要讲解“怎么避免在Vue中使用null作为class的空值”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么避免在Vue中使用null作为class的空值”吧!

使用 null 而不是传递一个空字符串,这可能会导致DOM输出中的一个空类。在你的三元操作符中,你可以返回 null。这将确保DOM中没有空类:

<!-- ❌ --> <div :class="isBold ? 'bold' : ''"> <!-- <div class> -->    <!-- ✅ --> <div :class="isBold ? 'bold' : null"> <!-- <div> -->

比较空字符串 '' 和 null

让我们深入研究上面的示例,然后更全面地了解正在发生的事情。

(1) 方案1:使用空字符串 '' /

我们使用三元运算符根据 isBold 是true还是falsy来有条件地设置适当的类。在此示例中,我们要说的是,如果 isBold 是 true  的,它将把该类设置为 bold。如果是 false 的,它将返回一个空字符串 “”。 :class 是 v-bind:class 的缩写。

<div :class="isBold ? 'bold' : ''"></div>  data() {   return {     isBold: false   } }

这将渲染:

<div class></div> <!--  糟糕, 空class -->

如果 isBold 为 true ,它将渲染:

<div class="bold"></div>

(2) 方案2:使用 null /

好吧,让我们看看如果将 null 分配为类的值会发生什么。

<div :class="isBold ? 'bold' : null"></div>  data() {   return {     isBold: false   } }

这将渲染:

<div></div> <!-- ✅ Nice, 没有空class -->

如果 isBold 为 true ,它将渲染:

<div class="bold"></div>

(3) 方案3:使用undefined /

顺便说一句, undefined 也可以工作

<div :class="isBold ? 'bold' : undefined"></div>  <div></div> <!-- ✅ Nice, 没有空class -->

false值

提醒一下,这些是javascript中的false值。因此,如果 isBold 是这些值中的任何一个,它将返回三元运算符的false条件。

false undefined null NaN 0 "" or '' or `` (empty string)

使用对象语法重构

在我的简单示例中,使用对象语法可能更好一些,如下所示:

<div :class="{ bold: isBold }"></div>

我猜使用三元运算符的一个更好的例子是设置多个类。

<div :class="isActive ? 'underline bold' : null"></div>

题外话:当我创作Demo时,我总是尽量让事情变得简单。其中一种方法就是尽可能地减少视觉噪音。因此,我的例子有时会过于简化,希望读者能够在不做太多处理的情况下立即掌握概念。《别让我思考》这本书给了我很大的启发。好了,言归正传,我们回到主菜上吧!

使用&&设置class

让我们探索另一种情况,看看是否可行。

<div :class="isBold && 'bold'"></div>

&& 不仅是产生布尔值的逻辑运算符,它实际上可以产生一个值。因此,这就是说如果 isBold 为真,则返回 bold。但是,如果isBold 为假,则返回 isBold 的值。

强调最后一点&mdash;&mdash;它将返回isBold的值。所以我们原来的空类问题仍然可以存在,取决于 isBold 的值是什么。我们来看看一些例子。

例子1: isBold 等于 false /

<div :class="isBold && 'bold'"></div>

这仍将渲染空类

<div class></div>

例子2: isBold 等于 null /

<div :class="isBold && 'bold'"></div>

由于 isBold 为 null,因此空类消失了 。

<div></div>

&& 并没有错&mdash;&mdash;事实上它正在做它的工作,只是我们需要一个具体的返回值。在其他方面,我们不能渲染空类,我们必须传递 null 或  undefined。任何其他的假值都是不行的,因为这一点很容易被忽略,所以我更喜欢更明确的三元操作符或者简单的对象语法 。

空类属性不好吗?

我试着用W3C Markup Validation Service检查了一下,两种语法确实都通过了。

<!-- Pass --> <div class>...</div>  <!-- Pass --> <div>...</div>

深入探讨html标准:空属性语法,似乎并不禁止空属性。

但是...

但是有效性不适用于 id,因为空ID被认为是无效的。

<!-- Fail --> <div id>...</div>  <!-- Fail --> <div id="">...</div>  <!-- Pass --> <div id="name">...</div>

❌ 错误:ID不能为空字符串。

到此,相信大家对“怎么避免在Vue中使用null作为class的空值”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

--结束END--

本文标题: 怎么避免在Vue中使用null作为class的空值

本文链接: https://lsjlt.com/news/84735.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 怎么避免在Vue中使用null作为class的空值
    本篇内容主要讲解“怎么避免在Vue中使用null作为class的空值”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么避免在Vue中使用null作为class的...
    99+
    2024-04-02
  • MySQL中空值Null和空字符怎么使用
    这篇文章主要介绍了MySQL中空值Null和空字符怎么使用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇MySQL中空值Null和空字符怎么使用文章都会有所收获,下面我们一起来看看吧。1. 空值 Null 和空...
    99+
    2023-06-30
  • 在Vue中怎么避免在动态绑定类出现空类的情况
    本篇内容介绍了“在Vue中怎么避免在动态绑定类出现空类的情况”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!...
    99+
    2024-04-02
  • mysql中怎么避免使用null定义字段的原因是什么
    本篇文章给大家分享的是有关mysql中怎么避免使用null定义字段的原因是什么,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。一 NULL 为什么这么经常用(1) java的nu...
    99+
    2023-06-20
  • Vue中为什么要避免同时使用v-for和 v-if
    这篇文章主要介绍了Vue中为什么要避免同时使用v-for和 v-if,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。v-for 遍历避免同时使用 v-if为什么要避免同时使用&...
    99+
    2023-06-26
  • 在vue中怎么使用export default导出的class类
    本文小编为大家详细介绍“在vue中怎么使用export default导出的class类”,内容详细,步骤清晰,细节处理妥当,希望这篇“在vue中怎么使用export default导出的class类”文章能帮助大家解决...
    99+
    2023-06-29
  • 怎么避免在Java代码中写大量的判空语句
    这篇文章主要介绍了怎么避免在Java代码中写大量的判空语句的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇怎么避免在Java代码中写大量的判空语句文章都会有所收获,下面我们一起来看看吧。有人说可以使用 JDK8提...
    99+
    2023-06-27
  • 为什么vue中不建议使用空字符串作为className
    目录比较空字符串''和null情况1:使用空字符串''情况2:使用null情况3:使用undefined使用对象的形式绑定class使用 &&绑定class案例1:i...
    99+
    2024-04-02
  • vue怎么将对象中所有的key赋为空值
    这篇文章主要介绍“vue怎么将对象中所有的key赋为空值”,在日常操作中,相信很多人在vue怎么将对象中所有的key赋为空值问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”vue怎么将对象中所有的key赋为空值...
    99+
    2023-06-29
  • 使用python怎么删除excel中的空值
    本篇文章为大家展示了使用python怎么删除excel中的空值,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。Python主要用来做什么Python主要应用于:1、Web开发;2、数据科学研究;3、网...
    99+
    2023-06-07
  • vue中的指令和插值怎么使用
    这篇文章主要介绍“vue中的指令和插值怎么使用”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“vue中的指令和插值怎么使用”文章能帮助大家解决问题。一、安装vue直接使用script标签引入<s...
    99+
    2023-07-04
  • 怎么在python中使用sqlite3判断cursor的结果是否为空
    这期内容当中小编将会给大家带来有关怎么在python中使用sqlite3判断cursor的结果是否为空,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。python可以做什么Python是一种编程语言,内置了...
    99+
    2023-06-14
  • 怎么在PHP中使用方法名作为参数
    本文小编为大家详细介绍“怎么在PHP中使用方法名作为参数”,内容详细,步骤清晰,细节处理妥当,希望这篇“怎么在PHP中使用方法名作为参数”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。一、PHP方法名的基础概念在P...
    99+
    2023-07-05
  • 怎么在linux中使用shell判断字符串是否为空
    今天就跟大家聊聊有关怎么在linux中使用shell判断字符串是否为空,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。help命令可以查看帮助help testLinux 下判断字符串...
    99+
    2023-06-09
  • 怎么在python中将切片作为占位符使用
    这篇文章给大家介绍怎么在python中将切片作为占位符使用,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。Python的优点有哪些1、简单易用,与C/C++、Java、C# 等传统语言相比,Python对代码格式的要求没...
    99+
    2023-06-14
  • 为vue-router懒加载时下载js的过程中添加loading提示避免无响应怎么办
    这篇文章给大家分享的是有关为vue-router懒加载时下载js的过程中添加loading提示避免无响应怎么办的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。用过vue-route...
    99+
    2024-04-02
  • vue怎么使用refs获取嵌套组件中的值
    本文小编为大家详细介绍“vue怎么使用refs获取嵌套组件中的值”,内容详细,步骤清晰,细节处理妥当,希望这篇“vue怎么使用refs获取嵌套组件中的值”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。使用refs获...
    99+
    2023-06-29
  • 为什么在赋值操作中使用同名函数不会导致错误?
    对于一个Golang开发者来说,牢固扎实的基础是十分重要的,编程网就来带大家一点点的掌握基础知识点。今天本篇文章带大家了解《为什么在赋值操作中使用同名函数不会导致错误?》,主要介绍了,希望对大家的知...
    99+
    2024-04-05
  • Vue中的Mustache插值语法、v-bind指令怎么使用
    本篇内容介绍了“Vue中的Mustache插值语法、v-bind指令怎么使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一、Mustach...
    99+
    2023-07-04
  • 怎么在python中使用defaultdict计算键值的和
    这篇文章将为大家详细讲解有关怎么在python中使用defaultdict计算键值的和,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。python可以做什么Python是一种编程语言,内置了许...
    99+
    2023-06-14
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作