vue3(一)-基础入门

一、导入vue.js

1.可以借助 script 标签直接通过 CDN 来使用 Vue

<!-- <script src="https://unpkg.com/vue@3/dist/vue.global.js"></script> -->

2.也可以下载vue.global.js文件并在本地导入

    <script src="./lib/vue.global.js"></script>

二、创建Vue对象

<script>
      const { createApp, ref } = Vue
      createApp({
        data() {
          return { message: 1 }
        }
      }).mount('#app')
</script>

三、如何插入值

双大括号中输入变量、表达式后,界面会随着变量、表达式的结果而发生变化(注意message作为变量不带引号,而a、b作为常量需要带引号

<div id="app">
      <P>{{ message }}</P>
      <p>{{ 10 + 20 }}</p>
      <p>{{ 10 > 20 ? 'a' : 'b' }}</p>
</div>

以上结果为:

在这里插入图片描述

四、指令

1、v-show

控制元素的显示隐藏,隐藏时的属性为:display:none

html代码:

<div v-show="isShow">v-show测试</div>
<button @click="changeShow()">v-show测试</button>

javascript:

<script>
      const { createApp, ref } = Vue
      const vm = createApp({
        data() {
          return { 
	          message: 1, 
	          isShow: true
          }
        },
        methods: {
          changeShow() {
            return (this.isShow = !this.isShow)
          }
        }
      }).mount('#app')
</script>

2、v-if 、v-else-if、v-else

控制元素的创建和删除

html代码:

isCreate =1时创建 v-if测试,删除其他两项
isCreate =2时创建 v-else-if测试,删除其他两项
isCreate =3时创建 v-else测试,删除其他两项

<div v-if="isCreate===1">v-if测试</div>
<div v-else-if="isCreate===2">v-else-if测试</div>
<div v-else>v-else测试</div>
<button @click="changeCreate()">if条件测试</button>

javascript:

<script>
      const { createApp, ref } = Vue
      const vm = createApp({
        data() {
          return {
            message: 1,
            isCreate: false
          }
        },
        methods: {
          changeCreate() {
            if (this.isCreate >= 3) {
              this.isCreate = 0
            }
            return this.isCreate++
          }
        }
      }).mount('#app')
    </script>

3、v-html

通过该指令插入html元素

html代码:

<div v-html="myhtml"></div>

javascript:

<script>
      const { createApp, ref } = Vue
      const vm = createApp({
        data() {
          return {
            myhtml: '<p>插入html</p>'
          }
        }
      }).mount('#app')
</script>

4、v-for

遍历数组并赋值、根据数组长度创建元素

html代码:

<ul>
  <li v-for="item in datalist">{{ item }}</li>
</ul>

javascript:

<script>
      const { createApp, ref } = Vue
      const vm = createApp({
        data() {
          return {
            datalist: ['111', '222', '333']
          }
        }
      }).mount('#app')
</script>

五、动态设置class属性

注意 class属性前缀需要加冒号

方式一:

html代码:

<div :class="isChage?'redClor':'yellowClor'">动态设置class属性1</div>
<button @click="isChageFn()">动态设置class属性1</button>

<style>
  .redClor{
    background-color: red;
  }
  .yellowClor{
    background-color: yellow;
  }
</style>

javascript:

<script>
      const { createApp, ref } = Vue

      const vm = createApp({
        data() {
          return {
            isChage: true
          }
        },
        methods: {
          isChageFn() {
            return (this.isChage = !this.isChage)
          }
        }
      }).mount('#app')
    </script>

结果展示:

初始: class =“red”
在这里插入图片描述
点击按钮后:class=“yellow”

在这里插入图片描述

方式二、

html代码:

<div :class="isChangeClass">动态设置class属性2</div>

javascript:

<script>
      const { createApp, ref } = Vue
      const vm = createApp({
        data() {
          return {
            isChangeClass: {
              a: true,
              b: true
            }
          }
        }
      }).mount('#app')
</script>

初始:class=“a b”

----------------------------------------------------------------------------------------------------
在这里插入图片描述
1.在浏览器控制台修改 vm.isChangeClass.a=false 后 : class=“b”

在这里插入图片描述
----------------------------------------------------------------------------------------------------

2.在浏览器控制台修改 vm.isChangeClass.b=false 后 : class=“a”

在这里插入图片描述
----------------------------------------------------------------------------------------------------

3.在浏览器控制台修改 vm.isChangeClass.c=true 后 : class=“c”
在这里插入图片描述
----------------------------------------------------------------------------------------------------

方式三、

html代码:

<div :class="isChangeArr">动态设置class属性3</div>

javascript:

<script>
      const { createApp, ref } = Vue
      const vm = createApp({
        data() {
          return {
            isChangeArr: ['a', 'b']
            }
          }
        }
      }).mount('#app')
</script>

初始:class=“a b”
----------------------------------------------------------------------------------------------------

1. 在浏览器控制台修改 vm.isChangeArr.pop() 后 : class=“a”
在这里插入图片描述
----------------------------------------------------------------------------------------------------

2. 再次在浏览器控制台修改 vm.isChangeArr.pop() 后 : class

在这里插入图片描述
----------------------------------------------------------------------------------------------------

3. 再次在浏览器控制台修改 vm.isChangeArr.push(‘c’) 后 : class=“c”
在这里插入图片描述
----------------------------------------------------------------------------------------------------

六、动态设置style属性

html代码:

<div :style="isStyleChange">动态设置style属性1</div>
<div :style="isStyleChangeObj">动态设置style属性2</div>
<div :style="isStyleChangeArr">动态设置style属性3</div>

javascript:

<script>
      const { createApp, ref } = Vue
      const vm = createApp({
        data() {
          return {
            isStyleChange: 'background-color:red',
            isStyleChangeObj: {
              backgroundColor: 'red',
              fontSize: '30px'
            },
            isStyleChangeArr: ['background-color:yellow']
            }
          }
        }
      }).mount('#app')
</script>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/187158.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

管理类联考——数学——汇总篇——知识点突破——代数——函数——记忆

文章目录 整体文字提炼图像绘画 考点记忆/考点汇总——按大纲 本篇思路&#xff1a;根据各方的资料&#xff0c;比如名师的资料&#xff0c;按大纲或者其他方式&#xff0c;收集/汇总考点&#xff0c;即需记忆点&#xff0c;在通过整体的记忆法&#xff0c;比如整体信息很多&am…

C++ Boost 异步网络编程基础

Boost库为C提供了强大的支持&#xff0c;尤其在多线程和网络编程方面。其中&#xff0c;Boost.Asio库是一个基于前摄器设计模式的库&#xff0c;用于实现高并发和网络相关的开发。Boost.Asio核心类是io_service&#xff0c;它相当于前摄模式下的Proactor角色。所有的IO操作都需…

Android仿 美团 / 饿了么,店铺详情页功能

前言 UI有所不同&#xff0c;但功能差不多&#xff0c;商品添加购物车功能 正在写&#xff0c;写完会提交仓库。 页面主要由&#xff1a;MagicIndicator ViewPager2 Fragment CoordinatorLayout NestedScrollView RecyclerView实现。 效果图一&#xff1a;左右RecyclerV…

【SwiftUI】7.预览及其内部机制

上一篇讲到了组件及组件化&#xff0c;从概念和优/缺点两个方向说明了组件化的意义&#xff0c;更为重要的是&#xff0c;组件和组件化是一个在编程领域&#xff0c;放之四海皆可以的概念&#xff0c;理解和运用它是非常必要的&#xff0c;希望大家能掌握。今天我们介绍另一个特…

K8S如何部署ActiveMQ(单机、集群)

前言 大家好&#xff0c;在今天的讨论中&#xff0c;我们将深入研究如何将ActiveMQ迁移到云端&#xff0c;以便更好地利用Kubernetes的容器调度和资源管理能力&#xff0c;确保ActiveMQ的高可用性和可扩展性。 ActiveMQ是Apache开源组织推出的一款开源的、完全支持JMS1.1和J2…

vue2:组件中extends的使用

上一篇文章中我对mixin的使用进行了一个使用和测试,这里对extend进行一个使用,其实extend和mixin还是有区别的。 上一篇文章:vue2:mixin混入的使用-CSDN博客 不过也是看实际的业务场景,我们也可以使用extend完成和mixin几乎一摸一样的操作。 不废话,上代码 创建extendTest.…

位图的详细讲解

位运算操作符&#xff1a;或&#xff0c;与&#xff0c;异或&#xff0c;按位取反。 操作符 |两个中有一个是一则为一&两个都是一则为一^相同为零&#xff0c;不同为一~零变成一&#xff0c;一变成零 什么是位运算符: 位运算是直接对整型数据的二进制进行运算。 位图概念…

告别百度网盘,搭建自己的专属网盘 ——Cloudreve,不限制下载速度!

Cloudreve 是一个用 Go 语言写的公有网盘程序,我们可以用它来快速搭建起自己的网盘服务,公有云 / 私有云都可。 顺哥博客 先来看看文档介绍吧。 支持多家云存储驱动的公有云文件系统. 演示站 • 讨论社区 • 文档 • 下载 • Telegram 群组 • 许可证 :sparkles: 特性 :cl…

webshell之Laravel和yii

EvalLoader#load 免杀效果 EvalLoader#load分析 eval命令执行函数&#xff0c;参数可控 MockTrait#generate 免杀效果 MockTrait#generate函数分析 存在一个eval函数 MockTrait#generate 免杀效果 view#evaluateDynamicContent 免杀效果 view#evaluateDynamicContent分析 总结…

Facebook的特点优势

Facebook作为全球最大的社交媒体平台之一&#xff0c;同时也是最受欢迎的社交网站之一&#xff0c;Facebook具有许多独特的特点和优势。本文小编将说一些关于Facebook的特点及优势。 1、全球化 Facebook拥有数十亿的全球用户&#xff0c;覆盖了几乎所有国家和地区。这使得人们…

初学剪辑者找视频素材就上这6个网站

视频剪辑必备的6个素材网站&#xff0c;高清无水印&#xff0c;还可以免费下载&#xff0c;无版权限制&#xff0c;赶紧收藏起来&#xff01; 1、菜鸟图库 https://www.sucai999.com/video.html?vNTYxMjky 菜鸟图库网素材非常丰富&#xff0c;网站主要以设计类素材为主&#…

(4)BUUCTF-web-[极客大挑战 2019]EasySQL1

前言&#xff1a; 觉得这个题目挺有意义的&#xff0c;因为最近在学数据库&#xff0c;但是不知道在现实中有什么应用&#xff0c;所以学起来也没有什么兴趣&#xff0c;做了这个题目&#xff0c;发现数据库还是挺有用处的&#xff0c;哈哈 知识点&#xff1a; mysql 中and和…

2023-11-24--oracle--实验--[Merge 语句]

oracle--实验---Merge语句 1.认知Merge 语句 • merge 语句是 sql 语句的一种。在 SQL server 、 Oracle 数据库中可用&#xff0c; MySQL 中不可用。 • merge 用来合并 update 和 insert 语句。目的&#xff1a;通过 merge 语句&#xff0c;根据一张表&#xff08; 原数据表…

Let’s xrOS 一款让你优先体验社区创作者的 visionOS App工具

Let’s xrOS Apple Vision Pro 发布预示着空间计算时代的到来&#xff0c;让科技爱好者和开发者开始思考如何在新的交互、系统和硬件上打造独特的三维应用。 自 WWDC 2023 的发布会后&#xff0c;社交媒体上涌现了许多精美的 visionOS App 的效果图和演示视频&#xff0c;然而…

Windows核心编程 进程

目录 一、进程概述 二、创建进程相关API Winexec ShellExecute CreateProcess 三、进程退出相关API ExitProcess TerminateProcess GetCurrentProcess GetExitCodeProcess 四、如何理解虚拟内存空间 五、关于UAC 一、进程概述 进程&#xff1a;正在运行的程序 程…

set和map + multiset和multimap(使用+封装(RBTree))

set和map 前言一、使用1. set(1)、模板参数列表(2)、常见构造(3)、find和count(4)、insert和erase(5)、iterator(6)、lower_bound和upper_bound 2. multiset3. map(1)、模板参数列表(2)、构造(3)、modifiers和operations(4)、operator[] 4. multimap 二、封装RBTree迭代器原理R…

(11_23)构建高效数据流转的 ETL 系统:数据库 + Serverless 函数计算的最佳实践

作者&#xff5c;柳下 概述 随着企业规模和数据量的增长&#xff0c;数据的价值越来越受到重视。数据的变化和更新变得更加频繁和复杂&#xff0c;因此及时捕获和处理这些变化变得至关重要。为了满足这一需求&#xff0c;数据库 CDC&#xff08;Change Data Capture&#xff…

晶振为什么不能放置在PCB边缘

某行车记录仪&#xff0c;测试的时候要加一个外接适配器&#xff0c;在机器上电运行测试时发现辐射超标&#xff0c;具体频点是84MHz、144MHz、168MHz&#xff0c;需要分析其辐射超标产生的原因&#xff0c;并给出相应的对策。辐射测试数据如下&#xff1a; 图1&#xff1a;辐…

B/S前后端分离的Java医院云HIS信息管理系统源码(LIS源码+电子病历源码)

HIS系统采用主流成熟技术开发&#xff0c;软件结构简洁、代码规范易阅读&#xff0c;SaaS应用&#xff0c;全浏览器访问前后端分离&#xff0c;多服务协同&#xff0c;服务可拆分&#xff0c;功能易扩展。多医院、多集团统一登录患者主索引建立、主数据管理&#xff0c;统一对外…

鸿蒙开发-ArkTS 语言-状态管理

鸿蒙开发-ArkTS 语言-基础语法 3. 状态管理 变量必须被装饰器装饰才能成为状态变量&#xff0c;状态变量的改变才能导致 UI 界面重新渲染 概念描述状态变量被状态装饰器装饰的变量&#xff0c;改变会引起UI的渲染更新。常规变量没有状态的变量&#xff0c;通常应用于辅助计算…