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

vue的语法模板与数据绑定的说明

vue的两大模板语法:

1.插值语法

2.指定语法

插值语法:{{}}         

功能:用于解析标签体的内容

写法:{{xxx}},xxxjs表达式,且可以直接读取到data中的所有属性

指定语法:

功能:用于解析标签(包括:标签属性、标签体内容、绑定事件...) 读取为js表达式

举例:v-bind:href:"xxx"或 简写成:href="xxx",xxx同样要写js表达式且可以直接读取到data中的所有属性

备注:Vue中有很多的指令 且形式都是v-????,此处我们只是拿V-bind举个例子

代码演示:

<div id="root"><h1>插值法</h1><h3>你好,{{name}}</h3><hr/><h1>指令语法</h1><!-- v-bind:value 单向数据绑定 简写成 :value --><a :href='school.url'>点我去学习1{{school.name}}</a><!-- <a v-bind:href="url">点我去学习2</a> -->
</div>
new Vue({el:'#root',data:{name:'jack',school:{name:'尚硅谷',url:'http://www.atguigu.com'}}
})

运行结果:

 Vue中2种数据绑定数据的方式:

            1.单向数据绑定(v-bind):数据只能从data流向页面

            2.双向数据绑定(v-model):数据不仅能从data流向页面,还可以从页面流向data

单向数据绑定(v-bind):

数据只能从data流向页面

一般使用指定语法:v-bind:value简写成为::value

双向数据绑定(v-model):

数据不仅能从data流向页面,还可以从页面流向data

1.双向数据绑定一般都应用在表单类元素上(如:input、select等)

2.v-model:value 可以简写成v-model,因为v-model默认收集的就是value值

代码演示:

<!-- 准备好一个容器 --><div id="root"><!-- 普通写法 --><!-- 单向数据绑定: <input type="text" v-bind:value="name"><br/>双向数据绑定: <input type="text" v-model:value="name"><br/> --><!-- 简写方式 -->单向数据绑定 <input type="text" :value="name"><br/>双向数据绑定 <input type="text" v-model="name"><!-- 如下代码是错误的   因为v-model只能应用于表单类元素上(输入类元素) --><!-- <h2 v-model:x="name"></h2> --></div><script>new Vue({el:'#root',data:{name:'尚硅谷'}})

 

 当双向数据绑定的时候 name改变name的值  单向数据绑定的值也会发生改变,如下:

eldata的两种写法:

el:

//el两种写法
const v = new Vue({
//el:'#root',
data:{
name:'尚硅谷'
}
})
v.$mount('#root') //第二种写法

data:

new Vue({el:'#root',//data的第一种写法:对象式/*data:{name:'尚硅谷'}*///data的第二种写法:函数式//data:function(){}//箭头函数没有自己的this//简写方式data(){console.log('@@@',this);//此处的this是vue的实例对象return{name:'尚硅谷'}}})

总结:

eldata的2种写法:

1.el有2种写法

(1).new Vue时候配置el属性

(2).先创建Vue实例,随后再通过vm.#mount('#root')指定el的值

2.data有2种写法

(1).对象式

(2).函数式

如何选择:目前哪种写法都可以 以后学习到组件时 data必须使用函数式,否则就会报错

3.一个重要的原则:

Vue管理的函数,一定不要写见箭头函数,一旦写了箭头函数,this就不再是Vue实例了

这里的函数是由vue调用的

如果写箭头函数 那函数就向外找this 找到window

http://www.lryc.cn/news/264418.html

相关文章:

  • VueCron使用方法
  • SpringBlade export-user SQL 注入漏洞复现
  • 结构体的一些补充知识
  • 20V升26V 600mA升压型LED驱动芯片,PWM调光芯片-AH1160
  • 如何在Go中制作HTTP服务器
  • Linux笔记---系统信息
  • 最新版android stuido加上namespace
  • Wireshark基础及捕获技巧
  • Windows下Navicat15.0连接Oracle11g报ORA-28547解决
  • 21 Vue3中使用v-for遍历对象数组
  • 深入理解Java自定义异常与全局异常处理 @RestControllerAdvice
  • h5页面跳转微信小程序(最简单的方法|URL Scheme)
  • 智能优化算法应用:基于非洲秃鹫算法3D无线传感器网络(WSN)覆盖优化 - 附代码
  • 持续集成交付CICD:Jenkins使用GitLab共享库实现前端项目镜像构建
  • SQL server 数据库 SQL语句高级用法
  • wavlink 路由器 多处前台RCE漏洞复现
  • 互联网中的商品超卖问题及其解决方案:Java中Redis结合UUID的应用
  • mysql:查看线程缓存中的线程数量
  • 线性表,也是Java中数组的知识点!
  • java使用面向对象实现图书管理系统
  • 2023 英特尔On技术创新大会直播 |我感受到的“芯”魅力
  • Atium Designer 23 全新功能-丝印制备,解决DFM问题
  • Nginx快速入门:安装目录结构详解及核心配置解读(二)
  • 测试TensorFlow/PyTorch的GPU版本是否启用
  • 字符串逆序输出
  • 期货平仓日历(期货平仓日期汇总)
  • 计算机网络-进阶
  • LED恒流驱动芯片SM2188EN:满足LED灯具出口欧盟所需的ERP能效认证标准和要求
  • RocketMQ系统性学习-RocketMQ原理分析之消费者的接收消息流程
  • butterfly蝴蝶分类