当前位置: 首页 > news >正文

Vue的简单入门 一

声明:本版块根据B站学习,创建的是vue3项目,用的是vue2语法风格,仅供初学者学习。

目录

 一、Vue项目的创建

1.已安装15.0或更高版本的Node.js   

2.创建项目

二、 简单认识目录结构

三、模块语法中的指令

 1.v-html

1.文本插值(最基本的语法)使用的是双大括号语法

 2.双大括号将会将数据插值为纯文本,而不是html。如果想插入html,需要使用v-html

 2.v-bind 属性绑定

 1.如果绑定值为null或者undefined,该属性就会从渲染的元素上移除。

2. 由于v-bind非常常用,提供了一种简写写法。

3.按钮是否失活,需要将属性定义为布尔属性。

4.绑定多个值,可以用对象来操作

 3.条件渲染

1.v-if 

​编辑 2.v-else

3.v-else-if

4.v-show 与 v-if

4.列表渲染

1.v-for

 5.通过key管理状态


 一、Vue项目的创建

1.已安装15.0或更高版本的Node.js   

node -v  #查看版本号

2.创建项目

我的出现这种情况是因为淘宝的镜像源证书过期了。

更换镜像源,查看是否更换,再次执行

npm使用国内淘宝镜像(最新地址)_npm最新淘宝镜像-CSDN博客

项目名称小写

后面默认是no,用到什么就选yes,

按照要求执行命令,当执行npm install时出现警告 

警告信息就是:required(需要) node.js版本是18.0.0或者20.0.0以上的,但是current(当前)是16.18.1

 继续执行npm run dev时开始报错 

 解决方案:我是去node官网选择20以上版本下载安装的。

环境变量自动配置 

安装完毕后查看版本 

重新cd 到vue-test目录下执行命令。(把node_modules文件删了,重新执行npm install 和 npm run dev就好了)

到这里,就成功创建Vue3项目了。 

二、 简单认识目录结构

Vuex项目目录结构

Npm install的作用就是创建 node_modules文件 

三、模块语法中的指令

 1.v-html

1.文本插值(最基本的语法)使用的是双大括号语法
 2.双大括号将会将数据插值为纯文本,而不是html。如果想插入html,需要使用v-html
<template><h3>模板语法</h3><p>{{msg}}</p><p>{{n+1}}</p><p>{{ok?"yes":"no"}}</p><p>{{message.split("").reverse().join("")}}</p><p>属性:<span>{{w}}</span></p><p>属性:<span v-html="w"></span></p><!-- 支持单一表达式 -->
</template>
<script >
export default{data(){return{n:1,msg:"语法",ok:true,message:"forever",w:"<a href=www.bilibili.com>bilibili</a>"}}
}
</script>

 运行结果

 2.v-bind 属性绑定

 1.如果绑定值为null或者undefined,该属性就会从渲染的元素上移除。
<template>
<div class="{{msg}}">hello world!</div>
<div v-bind:class="msg">hello world!</div>
<div v-bind:class="msg1">hello world!</div></template>
<script >
export default{data(){return{
msg:"active",
msg1:null}}
}
</script>

运行结果

2. 由于v-bind非常常用,提供了一种简写写法。
<div :id=”dynamicId” >动态绑定<div>
3.按钮是否失活,需要将属性定义为布尔属性。
:disabled=“isButtonDisabled”isButtonDisabled : true,
4.绑定多个值,可以用对象来操作
<template><div class="{{msg}}">hello world!</div><div v-bind:class="msg">hello world!</div><div v-bind:class="msg1">hello world!</div><div v-bind="Object">HelloWorld!</div></template><script >export default{data(){return{msg:"active",msg1:null,Object:{class:"appclass",id:"appid"}}}}</script>

 运行结果

 3.条件渲染

1.v-if 

该指令用于条件性的渲染一块内容。这块内容只有在指令的表达式返回值为真时才会被渲染。 

<template><span v-if="flag">条件渲染1</span><span v-if="!flag">条件渲染2</span>
</template><script>
export default{data () {return{flag: true}}
}
</script>

 运行结果如图,第二个并未被渲染

 2.v-else

必须与v-if联合使用,否则会报错

 

3.v-else-if
<template><span v-if="!flag">条件渲染1</span><span v-else>条件渲染2</span><span v-if="type==='A'">条件渲染A</span><span v-else-if="type === 'B'">条件渲染B</span><span v-else-if="type === 'C'">条件渲染C</span><span v-else>条件渲染D</span></template><script>
export default{data () {return{flag: true,type:'D'}}
}
</script>

运行结果

4.v-show 与 v-if
<template><span v-if="!flag">条件渲染1</span><span v-else>条件渲染2</span><span v-if="type==='A'">条件渲染A</span><span v-else-if="type === 'B'">条件渲染B</span><span v-else-if="type === 'C'">条件渲染C</span><span v-else>条件渲染D</span><div v-show="flag">条件渲染 v-show</div><div v-show="!flag">条件渲染 v-show</div></template><script>
export default{data () {return{flag: true,type:'D'}}
}
</script>

运行结果 

v-if和v-show的区别:

简而言之就是:

v-if 首次为假时,不做任何事。只有首次为真时,才会被渲染。真变假时,事件监听器和子组件都会被销毁与重建。在运行时条件很少改变,则v-if更加合适。

v-show 始终渲染。频繁切换用v-show。开销低

4.列表渲染

1.v-for

v-for指令基于一个数组来渲染一个列表。V-for指令的值需要使用 item in items 的形式的特殊语法,其中 items 是源数据的的数组,而item是迭代项的别名。 

<template><h2>列表渲染</h2><div><p v-for="i in names" :key="i">{{i}}</p></div><div v-for="i in result" :key="i"><p>{{i.name}}</p><img :title="i.title"></div></template><script>export default{data () {return{names:[1,2,3],result:[{name:"a" ,title :"a"},{name:"b" ,title :"b"},{name:"c" ,title :"c"}]}}}</script>

运行结果

也可以是(value,key,index) 三个值的顺序是默认顺序

可以使用of代替in,更接近JavaScript的迭代器语法。 

<template>
<h2>列表渲染</h2><!-- 三个值的顺序是默认顺序 --><div v-for="(value,key,index) of Student" :key="key">{{value}}-{{key}}-{{index}}</div></template><script>export default{data () {return{Student:{name :"千禧",id: 1,age:18,sex:"man"}}}}</script>

 运行结果

 5.通过key管理状态

相关文章:

Vue的简单入门 一

声明&#xff1a;本版块根据B站学习&#xff0c;创建的是vue3项目&#xff0c;用的是vue2语法风格&#xff0c;仅供初学者学习。 目录 一、Vue项目的创建 1.已安装15.0或更高版本的Node.js 2.创建项目 二、 简单认识目录结构 三、模块语法中的指令 1.v-html 1.文本插值…...

【免费送书活动】《MySQL 9从入门到性能优化(视频教学版)》

本博主免费赠送读者3本书&#xff0c;书名为《MySQL 9从入门到性能优化&#xff08;视频教学版&#xff09;》。 《MySQL 9从入门到性能优化&#xff08;视频教学版&#xff09;&#xff08;数据库技术丛书&#xff09;》(王英英)【摘要 书评 试读】- 京东图书 这本书已经公开…...

export default与export区别

1.定义&#xff1a; export default‌&#xff1a;用于导出模块中的默认成员。一个模块中只能有一个export default&#xff0c;通常用于导出模块的主要功能或对象。导入时可以使用任意名称&#xff0c;因为它没有具体的名称‌ ‌export‌&#xff1a;用于导出模块中的多个成…...

最佳的出牌方法

最佳的出牌方法 真题目录: 点击去查看 E 卷 200分题型 题目描述 手上有一副扑克牌,每张牌按牌面数字记分(J=11,Q=12,K=13,没有大小王),出牌时按照以下规则记分: 出单张,记牌面分数,例如出一张2,得分为2出对或3张,记牌面分数总和再x2,例如出3张3,得分为(3+3+3)x2=1…...

Kotlin 2.1.0 入门教程(二十一)数据类

数据类 数据类主要用于存储数据。 对于每个数据类&#xff0c;编译器会自动生成一些额外的成员函数&#xff0c;这些函数支持将实例打印为易读的输出、比较实例、复制实例等操作。 数据类使用 data 关键字标记&#xff1a; data class User(val name: String, val age: Int…...

30天开发操作系统 第 20 天 -- API

前言 大家早上好&#xff0c;今天我们继续努力哦。 昨天我们已经实现了应用程序的运行, 今天我们来实现由应用程序对操作系统功能的调用(即API, 也叫系统调用)。 为什么这样的功能称为“系统调用”(system call)呢&#xff1f;因为它是由应用程序来调用(操作)系统中的功能来完…...

WEB安全--SQL注入--floor报错注入

一、原理&#xff1a; floor()报错注入需要组合count()、rand()、group by()等函数使用&#xff0c;通过一些手段使数据库在处理语句时产生主键重复的报错&#xff0c;从而达到爆出信息的目的 二、内容&#xff1a; ?id-1 or (select 1 from (select count(*),concat(databa…...

【java面向对象的三大特性】封装、继承和多态

目录标题 一、封装&#xff08;Encapsulation&#xff09;&#xff1a;二、继承&#xff08;Inheritance&#xff09;&#xff1a;三、多态&#xff08;Polymorphism&#xff09;&#xff1a;1. 多态的三个必要条件&#xff1a;2.多态的具体实现&#xff1a;3.多态的使用场景&a…...

Hermite 插值

Hermite 插值 不少实际问题不但要求在节点上函数值相等&#xff0c;而且还要求它的导数值相等&#xff0c;甚至要求高阶导数值也相等。满足这种要求的插值多项式就是 Hermite 插值多项式。 下面只讨论函数值与导数值个数相等的情况。设在节点 a ≤ x 0 < x 1 < ⋯ <…...

【推理llm论文精度】DeepSeek-R1:强化学习驱动LLM推理能力飞跃

最近deepseek R1模型大火&#xff0c;正好复习一下他家的技惊四座的论文https://arxiv.org/pdf/2501.12948 近年来&#xff0c;大型语言模型&#xff08;LLM&#xff09;在推理能力上取得了显著进展&#xff0c;但如何进一步有效提升仍然是研究热点。DeepSeek-AI发布了 DeepS…...

arm linux下的中断处理过程。

本文基于ast2600 soc来阐述&#xff0c;内核版本为5.10 1.中断gic初始化 start_kernel() -> init_IRQ() -> irqchip_init() of_irq_init()主要是构建of_intc_desc. 489-514: 从__irqchip_of_table中找到dts node中匹配的of_table(匹配matches->compatible)&#xf…...

C语言:指针详解

C语言&#xff1a;指针详解 1&#xff1a;指针的基本概念1&#xff1a;什么是指针2&#xff1a;为什么要引入指针3&#xff1a;指针的作用4&#xff1a;指针的类型 2&#xff1a;指针的声明与初始化1&#xff1a; 指针的声明2&#xff1a; 指针的初始化 3&#xff1a;指针的操作…...

github用户名密码登陆失效了

问题&#xff1a; git push突然推代码需要登陆&#xff0c;但是用户名和密码正确输入后&#xff0c;却提示403 git push# Username for https://github.com: **** #Password for https://gyp-programmergithub.com: #remote: Permission to gyp-programmer/my-app.git denie…...

【删除tomcat默认管理控制台】

停止Tomcat&#xff1a; ./catalina.sh stop 删除管理控制台应用&#xff1a; 进入Tomcat的webapps目录&#xff1a; cd /path/to/tomcat/webapps List item 删除manager和host-manager文件夹&#xff1a; rm -rf manager host-manager 启动Tomcat&#xff1a; ./catali…...

动态库与静态库:深入解析与应用

在软件开发中&#xff0c;库&#xff08;Library&#xff09;是预编译的代码集合&#xff0c;用于在多个程序之间共享功能。根据链接方式的不同&#xff0c;库主要分为两种类型&#xff1a;静态库&#xff08;Static Library&#xff09; 和 动态库&#xff08;Dynamic Library…...

【鱼眼镜头12】Scaramuzza的鱼眼相机模型实操,不依赖于具体的相机几何结构,直接从图像数据出发,因此更具灵活性。

文章目录 Scaramuzza相机模型标定效果2、原理和代码代码1、 2D映射到3D&#xff0c;函数输入为2D点坐标OCAM参数代码功能详解2、3D --> 2D 3、总结Scaramuzza 模型的核心思想Scaramuzza 模型的核心思想与 Kannala-Brandt 模型的对比Scaramuzza 模型的独特之处Scaramuzza 的意…...

LVS 负载均衡集群(NAT模式)

一、环境准备 四台主机&#xff08;一台 LVS、两台 RS、一台客户端&#xff09; 注意每个虚拟机都需要关闭防火墙和 selinux 1.1.LVS 主机 LVS 主机&#xff08;两块网卡&#xff09; 第一块&#xff1a;NAT模式&#xff08;内网&#xff09; 第二块&#xff1a;添加网卡&am…...

MATLAB中的APPdesigner绘制多图问题解析?与逻辑值转成十进制

在matlab APPdesigner中绘图可以用UIAxes组件进行绘图&#xff0c;但是当想多张图时&#xff0c;只能提前绘制图像区域不方便。下面是几种办法&#xff1a; 为了操作可以添加Panl组件&#xff0c;方便操作。 1、当是要求的几个图像大小都是相同时刻采用函数&#xff1a; til…...

9种慢慢被淘汰的编程语言...

技术不断进步&#xff0c;我们使用的编程语言也不例外。 随着人工智能的兴起以及对编程语言使用的影响&#xff0c;我们更加关注哪些语言将在未来继续流行&#xff0c;哪些会被淘汰。 Python、Java 和 JavaScript 等多功能编程语言正在主导市场&#xff0c;而其他一些语言则逐…...

vue知识点5

1.如何让组件里的样式与其他组件互相不干扰 scope范围的意思 <style scope> </style> 2.vue的生命周期 创建 挂载 更新 销毁 3.vue的四个生命周期详解 创建beforeCreate,created 挂载 beforeMount,mounted 更新 beforeUpdate,updated 销毁 beforeDest…...

智慧医疗能源事业线深度画像分析(上)

引言 医疗行业作为现代社会的关键基础设施,其能源消耗与环境影响正日益受到关注。随着全球"双碳"目标的推进和可持续发展理念的深入,智慧医疗能源事业线应运而生,致力于通过创新技术与管理方案,重构医疗领域的能源使用模式。这一事业线融合了能源管理、可持续发…...

CTF show Web 红包题第六弹

提示 1.不是SQL注入 2.需要找关键源码 思路 进入页面发现是一个登录框&#xff0c;很难让人不联想到SQL注入&#xff0c;但提示都说了不是SQL注入&#xff0c;所以就不往这方面想了 ​ 先查看一下网页源码&#xff0c;发现一段JavaScript代码&#xff0c;有一个关键类ctfs…...

Golang 面试经典题:map 的 key 可以是什么类型?哪些不可以?

Golang 面试经典题&#xff1a;map 的 key 可以是什么类型&#xff1f;哪些不可以&#xff1f; 在 Golang 的面试中&#xff0c;map 类型的使用是一个常见的考点&#xff0c;其中对 key 类型的合法性 是一道常被提及的基础却很容易被忽视的问题。本文将带你深入理解 Golang 中…...

VB.net复制Ntag213卡写入UID

本示例使用的发卡器&#xff1a;https://item.taobao.com/item.htm?ftt&id615391857885 一、读取旧Ntag卡的UID和数据 Private Sub Button15_Click(sender As Object, e As EventArgs) Handles Button15.Click轻松读卡技术支持:网站:Dim i, j As IntegerDim cardidhex, …...

shell脚本--常见案例

1、自动备份文件或目录 2、批量重命名文件 3、查找并删除指定名称的文件&#xff1a; 4、批量删除文件 5、查找并替换文件内容 6、批量创建文件 7、创建文件夹并移动文件 8、在文件夹中查找文件...

【网络安全产品大调研系列】2. 体验漏洞扫描

前言 2023 年漏洞扫描服务市场规模预计为 3.06&#xff08;十亿美元&#xff09;。漏洞扫描服务市场行业预计将从 2024 年的 3.48&#xff08;十亿美元&#xff09;增长到 2032 年的 9.54&#xff08;十亿美元&#xff09;。预测期内漏洞扫描服务市场 CAGR&#xff08;增长率&…...

渗透实战PortSwigger靶场-XSS Lab 14:大多数标签和属性被阻止

<script>标签被拦截 我们需要把全部可用的 tag 和 event 进行暴力破解 XSS cheat sheet&#xff1a; https://portswigger.net/web-security/cross-site-scripting/cheat-sheet 通过爆破发现body可以用 再把全部 events 放进去爆破 这些 event 全部可用 <body onres…...

工程地质软件市场:发展现状、趋势与策略建议

一、引言 在工程建设领域&#xff0c;准确把握地质条件是确保项目顺利推进和安全运营的关键。工程地质软件作为处理、分析、模拟和展示工程地质数据的重要工具&#xff0c;正发挥着日益重要的作用。它凭借强大的数据处理能力、三维建模功能、空间分析工具和可视化展示手段&…...

零基础设计模式——行为型模式 - 责任链模式

第四部分&#xff1a;行为型模式 - 责任链模式 (Chain of Responsibility Pattern) 欢迎来到行为型模式的学习&#xff01;行为型模式关注对象之间的职责分配、算法封装和对象间的交互。我们将学习的第一个行为型模式是责任链模式。 核心思想&#xff1a;使多个对象都有机会处…...

NFT模式:数字资产确权与链游经济系统构建

NFT模式&#xff1a;数字资产确权与链游经济系统构建 ——从技术架构到可持续生态的范式革命 一、确权技术革新&#xff1a;构建可信数字资产基石 1. 区块链底层架构的进化 跨链互操作协议&#xff1a;基于LayerZero协议实现以太坊、Solana等公链资产互通&#xff0c;通过零知…...