基础

差值语法

  <div id="root">
<h1>插值语法@萌狼蓝天 {{Date.now()}}</h1>
<h1>Meng Lang Lan Tian,Can you change it? >> {{number}}</h1>
<h2>{{message.toUpperCase()}}</h2>
<p>
1.创建Vue实例,传入配置对象
<br/>
2.容器中的Vue代码称为【Vue模板】
<br/>
3.容器中的代码依旧符合hmtl规范
<hr>
<div style="width: 100%;color:white;background-color: rgb(255, 193, 193);padding:2px 0 2px 2em;">
注意区分表达式和代码
</div>
</p>
</div>
<script>
Vue.config.productionTip=false//隐藏控制台提示
const vm = new Vue({
el:'#root',//绑定元素 el:element 元素 | 用于指定当前Vue实例为哪个容器服务,值通常为css选择器字符。
data:{
number:'0',
message:"do you know i'am big or small ?"
} })//创建Vue实例
</script>

模板语法

  <div id="app">
<!-- 插值语法 -->
<h1>Easy?{{is}}</h1>
<!-- 指令语法 | 功能:解析标签(标签属性、标签体内容、绑定事件……) -->
<a v-bind:href="url" target="_blank">点我跳转到博客</a>
<br>
<a :href="url" target="_blank">点我跳转到博客</a>
<hr>
<h1>Easy?{{school.is}}</h1>
<a :href="school.url" target="_blank">点我跳转到博客</a>
</div>
<script>
new Vue({
el:"#app",
data:{
is:"Right",
url:"https://cnblogs.com/mllt",
school:{
is:"Wrong",
url:"https://mllt.cc"
}
}
})
</script>

数据绑定

<div id="app">
单向数据绑定(v-bind):<input type="text" v-bind:value="name"><br/>
双向数据绑定(v-moudle):<input type="text" v-moudel:value="blog"><br/>
双向数据绑定(v-moudle):<input type="text" v-moudel:value="blog">
<!-- v-moudel只能用于表单类元素 -->
</div>
<script>
Vue.config.productionTip = false
new Vue({
el:"#app",
data:{
name:"萌狼蓝天",
blog:"htts://cnblog.com/mllt",
} })
</script>

el与data的两种写法

el与data写法1

Vue.config.productionTip=false//隐藏控制台提示
const vm = new Vue({
el:'#root',//绑定元素 el:element 元素(唯一根元素) | 用于指定当前Vue实例为哪个容器服务,值通常为css选择器字符。
data:{
number:'0',
message:"do you know i'am big or small ?"
}
})//创建Vue实例

el写法2:挂载

        Vue.config.productionTip=false//隐藏控制台提示
const vm = new Vue({
data:{
number:'0',
message:"do you know i'am big or small ?"
}
})//创建Vue实例
console.log(vm) //第二种写法
vm.$mount('#root')
//mount:挂载 //setTimeout(()=>{
// vm.$mount('#root')
//},3000) //3秒延迟

data写法2:函数式写法

  Vue.config.productionTip=false//隐藏控制台提示
const vm = new Vue({
//函数式写法
data:function(){
//必须要有return
return{
number:'0',
message:"do you know i'am big or small ?"
}
}
})//创建Vue实例
console.log(vm)
vm.$mount('#root')

下面是简写

        Vue.config.productionTip=false//隐藏控制台提示
const vm = new Vue({
//函数式写法 组件必须用函数式
// data:function(){
// console.log('@@@',this)//this:Vue的实例对象
// //必须要有return
// return{
// number:'0',
// message:"do you know i'am big or small ?"
// }
// } //函数式写法 简写
data(){
console.log('@@@',this)//this:Vue的实例对象
//必须要有return
return{
number:'0',
message:"do you know i'am big or small ?"
}
}
//原则:由Vue管理的函数 禁止使用“=>”函数写法
})//创建Vue实例
console.log(vm)
vm.$mount('#root')

绑定样式

  1. class样式

    写法:class="xxx" xxx可以是字符串、对象、数组。

    字符串写法适用于:类名不确定,要动态获取。

    对象写法适用于:要绑定多个样式,个数不确定,名字也不确定。

    数组写法适用于:要绑定多个样式,个数确定,名字也确定,但不确定用不用。

  2. style样式

    :style="{fontSize: xxx}" 其中xxx是动态值。

    :style="[a,b]"其中a、b是样式对象。

绑定class样式

 .basic{
border: 1px solid red;
}
.round{
border-radius:5px;
}
.text-center{
text-align: center;
}
.text-indent{
text-indent: 2em;
}
 <div id="root" >
<!-- 绑定class样式, 字符串写法 适用于 样式的类名不确定,需要动态指定 -->
<div class="basic" :class="newClass">
Just play
</div>
<button @click='changeMood'>change</button>
<button @click='changeMood2'>change2</button>
<br>
<hr>
<br>
<!-- 绑定class样式,数组写法,适用于 要绑定的样式个数不确定,名字也不确定 -->
<div class="basic" :class="classArr">
Just play
</div>
<br>
<hr>
<br>
<!-- 绑定class样式,对象写法,适用于 要绑定的样式个数确定,名字也确定,但是要动态决定是否使用这些样式 -->
<div class="basic" :class="classObj">
Just play
</div>
</div>
 Vue.config.productionTip=false//隐藏控制台提示
const vm = new Vue({
el:'#root',
data(){
return{
newClass:'round',
classArr:['round','text-center','text-indent'],
classObj:{
round:true
}
}
},
methods:{
changeMood(){
this.newClass='text-center round'
},
changeMood2(){
const arr = ['round','text-indent','text-center']
const index = Math.floor(Math.random()*3)
this.newClass=arr[index]
}, }
})
vm.$mount('#root')

绑定style样式

 .basic{
border: 1px solid red;
}
<div id="root" >
<div class="basic" :style="{fontSize:fsize+'px'}">
Just play
</div>
<br><br>
<!-- 绑定style样式,对象写法 -->
<div class="basic" :style="styleObj">
Just play
</div>
<br>
<br>
<div class="basic" :style="[styleObj1,styleObj2]">
Just play
</div>
<br>
<br>
<!-- 绑定style样式,数组写法 -->
<div class="basic" :style="styleArr">
Just play
</div>
</div>
 Vue.config.productionTip=false//隐藏控制台提示
const vm = new Vue({
el:'#root',
data(){
return{
fsize:40,
styleObj:{
fontSize:'40px',
},
styleObj1:{
color:'green',
fontSize:'20px',
},
styleObj2:{
background:'yellow',
},
styleArr:[
{
color:'green',
fontSize:'20px',
},
{
background:'yellow',
}
]
}
},
methods:{ }
})
vm.$mount('#root')

条件渲染

  1. v-if

    • 写法:

      (1).v-if="表达式”

      (2).v-else-if="表达式"

      (3).v-else="表达式”
    • 适用于:切换频率较低的场景。
    • 特点:不展示的DOM元素直接被移除。
    • 注意: v-if可以和:v-else-ifv-else一起使用, 但要求结构不能被“打断”。
  2. v-show

    • 写法: v-show=" 表达式"
    • 适用于:切换频率较高的场景。
    • 特点:不展示的DOM元素未被移除,仅仅是使用样式隐藏掉
  3. 备注

    使用v-if的时,元素可能无法获取到,而使用v-show 定可以获取到。

<div id="root">
<!-- 使用v-show做条件渲染 -->
<h2 v-show="wa">Oh Just Play1</h2>
<h2 v-show="1===1">Oh Just Play2</h2>
<!-- 使用v-if做条件渲染 -->
<h2 v-if="wa">Oh Just Play4</h2>
<h2 v-if="1===1">Oh Just Play3</h2> <hr>
<h2>当前值为:{{n}}</h2>
<button @click="n++">n++</button>
<div v-show="n===1">v-Show 1</div>
<div v-if="n===2">v-if 2</div>
<div v-else-if="n===1">v-else-if 1</div>
<div v-else>v-else</div>
<!-- v-if 和 v-else 和 v-else-if 在使用时,要紧紧连在一起,不允许被打断,不然不形成整体 -->
<hr>
<!-- template只能和v-if使用,不能和v-show使用 -->
<template v-if="n===2">
<h2>路人甲</h2>
<h2>路人2</h2>
<h2>路人3</h2>
</template>
</div>
Vue.config.productionTip=false//隐藏控制台提示
const vm = new Vue({
el:'#root',
data(){
return{
wa:false,
n:0,
}
}
})
vm.$mount('#root')

【Vue】vue基础学习笔记的更多相关文章

  1. 两万字Vue.js基础学习笔记

    Vue.js学习笔记 目录 Vue.js学习笔记 ES6语法 1.不一样的变量声明:const和let 2.模板字符串 3.箭头函数(Arrow Functions) 4. 函数的参数默认值 5.Sp ...

  2. 两万字Vue.js基础学习笔记(二)

    Vue.js学习笔记(二) 4.模块化开发 ES6模块化的导入和导出 我们使用export指令导出了模块对外提供的接口,下面我们就可以通过import命令来加载对应的这个模块了 首先,我们需要在HTM ...

  3. 最新 Vue 源码学习笔记

    最新 Vue 源码学习笔记 v2.x.x & v3.x.x 框架架构 核心算法 设计模式 编码风格 项目结构 为什么出现 解决了什么问题 有哪些应用场景 v2.x.x & v3.x.x ...

  4. 【C#编程基础学习笔记】4---Convert类型转换

    2013/7/24 技术qq交流群:JavaDream:251572072  教程下载,在线交流:创梦IT社区:www.credream.com [C#编程基础学习笔记]4---Convert类型转换 ...

  5. 【C#编程基础学习笔记】6---变量的命名

    2013/7/24 技术qq交流群:JavaDream:251572072  教程下载,在线交流:创梦IT社区:www.credream.com [C#编程基础学习笔记]6---变量的命名 ----- ...

  6. 1.C#基础学习笔记3---C#字符串(转义符和内存存储无关)

    技术qq交流群:JavaDream:251572072  教程下载,在线交流:创梦IT社区:www.credream.com ------------------------------------- ...

  7. Java基础学习笔记总结

    Java基础学习笔记一 Java介绍 Java基础学习笔记二 Java基础语法之变量.数据类型 Java基础学习笔记三 Java基础语法之流程控制语句.循环 Java基础学习笔记四 Java基础语法之 ...

  8. Mysql数据库基础学习笔记

    Mysql数据库基础学习笔记 1.mysql查看当前登录的账户名以及数据库 一.单表查询 1.创建数据库yuzly,创建表fruits 创建表 ) ) ,) NOT NULL,PRIMARY KEY( ...

  9. 0003.5-20180422-自动化第四章-python基础学习笔记--脚本

    0003.5-20180422-自动化第四章-python基础学习笔记--脚本 1-shopping """ v = [ {"name": " ...

  10. Java基础学习笔记(一)

    Java基础学习笔记(一) Hello World 基础代码学习 代码编写基础结构 class :类,一个类即一个java代码,形成一个class文件,写于每个代码的前端(注意无大写字母) XxxYy ...

随机推荐

  1. go语言中变量的作用域

    Go 语言中的变量作用域规则决定了变量在程序的哪些部分是可见的和可以访问的.理解这些规则对于编写清晰.维护性高的代码非常重要.下面是一个系统性的解释. 变量的作用域类型 包级作用域: 包级作用域的变量 ...

  2. ios中文件夹文件的创建和删除

    //1.文件夹.文件的创建和删除 NSFileManager *fileManager=[NSFileManager defaultManager]; NSString *filePath=@&quo ...

  3. 配置linux的远程登录操控 ssh 配置密钥

    1. 安装ssh服务 yum install openssh-server 启动服务 service ssh start ssh 的配置文件位置 ect/ssh/sshd_config 001. 把P ...

  4. 云原生周刊:OpenTofu 宣布正式发布 | 2023.1.15

    开源项目推荐 kubeaudit kubeaudit 是一个开源项目,旨在帮助用户对其 Kubernetes 集群进行常见安全控制的审计.该项目提供了工具和检查规则,可以帮助用户发现潜在的安全漏洞和配 ...

  5. AI五子棋_08 五子棋落子规则对应的价值

    AI五子棋 第八步 恭喜你到达第八步! 利用前一步得到的棋型分析结果,考察每一个可能落子的位置,给每一个可能的位置打分,将棋子落在分数最高的位置上.根据经验,我们可以总结出下面的落子规则: 1. 致胜 ...

  6. nginx配置tomcat的负载均衡记录

    实现效果 (1)浏览器地址栏输入地址 http://192.168.17.129/edu/a.html,负载均衡效果,平均在 8080和 8081 端口中. 准备工作 (1)准备两台 tomcat 服 ...

  7. Next.js 零基础开发入门教程2 构建基础脚手架 2024最新更新中|曲速引擎 Warp Drive

    开发目标 我们将构建一个简化版本的财务仪表板,其内容包括:公共主页.登录页面.受身份验证保护的仪表板页面.用户可以添加.编辑和删除发票 这篇文章先创建一个简单的nextjs脚手架页面 安装pnpm包管 ...

  8. ABC370 E - Avoid K Partition

    ABC370 E - Avoid K Partition 求一个序列的合法划分方案数.一种划分合法当且仅当没有一个子串的和是 \(k\). 由于是否存在子串和为 \(k\) 很重要,因此考虑将它加入状 ...

  9. NOIP2024模拟11:忠于自我

    NOIP2024模拟11:忠于自我 T1 一句话题意:有若干个容量为 \(L\) 的包,从左往右装物品,当前包还能装则装,否则必须重开一个包装进去,对于\(\forall i \in [1,n]\), ...

  10. 5.7 Linux Vim可视化模式

    相信大家都使用过带图形界面的操作系统中的文字编辑器,用户可以使用鼠标来选择要操作的文本,非常方便.在 Vim 编辑器中也有类似的功能,但不是通过鼠标,而是通过键盘来选择要操作的文本. 在 Vim 中, ...