Vue基本操作学习记录

Vue基本操作学习记录

#:id选择器
. :calss选择器

Vue引入的基本步骤

1、导入开发版本的vue.js
2、创建Vue实例对象,设置el属性和data属性
3、使用模板语法把数据渲染到页面上

el:挂载点

vue实例作用范围:el选项命中的元素及其内部的后代元素

data:数据对象

vue中要用得数据定义在data中,data中可以写复杂类型的数据,渲染复杂类型的数据时,遵循js的语法即可

Vue指令:以v-开头的一组特殊语法

1、内容绑定、事件绑定

v-text:设置标签的文本值(textContent)
默认写法会替换全部内容,使用差值表达式{{}}可以替换指定内容
内部支持写表达式

v-html:设置标签的innerHTML

	<div id="app">
		<p v-html="content"></p>
	</div>
	
	var app=new Vue({
		el:"#app"
		data:{
			content:"<a href='#'>xxxxx</a>"
		}
	})	

v-on:为元素绑定事件
事件名不需要写on
指令可以简写为@
绑定的方法定义在methods属性中
方法内部通过this关键字可以访问定义在data中的数据

    <div id="app">
        <p v-html="content"></p>
        <input type="button" value="事件绑定"  @click="doit">
        <input type="button" value="事件绑定"  @mouseenter="doit">
        <input type="button" value="事件绑定"  v-on:click="doit">
        <h2 @click='change'>{{xxx}}</h2>
    </div>

    <!-- 开发环境版本,包含了有帮助的命令行警告 -->
    <script src="https://cdn.jsdelivr.net/npm/vue@2/dist/vue.js"></script>

    <script>   
        var app =new Vue({
            el:"#app",
            methods:{ 
                doit:function(){
                    alert("做IT");
                    //逻辑
                },
                change:function(){
                    this.xxx+="yyy"
                }
            },
            data:{
                xxx:"what",
                message:"HELLO VUE!",
                school:{
                    name:" "
                },
                content:"<a href='#'>xxxxx</a>"
            }
        })
    </script>


2、显示切换,属性绑定

v-show:根据表达值的真假,切换元素的显示和隐藏
原理是修改元素的display,实现隐藏显示
指令后面的内容最终都会解析成为布尔值
值为true元素显示,值为false元素隐藏
数据改变之后,对应的元素的显示状态会同步更新

    <div id='app'>
        <img src="./man.jpg" v-show='true'>
        <img src="./man.jpg" v-show='isShow'>
        <img src="./man.jpg" v-show='age>18'>
    </div>
    
    <script>
        var app=new Vue({
            el:'#app',
            data:{
                isShow:true,
                age:25
            }
        })
    </script>
    

v-if:根据表达值的真假,切换元素的显示和隐藏(操纵dom元素)
本质是通过操纵dom元素来切换显示状态
表达式的值为true,元素存在于dom树中,为false,从dom树中移除
频繁切换的元素用v-show,反之使用v-if,前者的切换消耗小

    <div id="app">
        <p v-if="true">这是一个p标签</p>
        <p v-if="isShow">这是一个p标签</p>
        <p v-if="表达式">这是一个p标签</p>
    </div>
    <script>
        var app = new Vue({
            el:"#app",
            data:{
                isShow:true
            }

        })
    </script>

v-bind:设置元素的属性
v-bind:属性名=表达式

    <div id="app">
        <img v-bind:src="imgSrc" v-show='true'>
        <br>
        <img :src="imgSrc" alt="">
        <br>
        <img :src="imgSrc" alt="" :title="imgTitle+'!!!!!'">
    </div>

    <script>
        var app=new Vue({
            el:"#app",
            data:{
                imgSrc:"./women.jpg",
                imgTitle:"title"
            }

        }      
        )
    </script>

3、列表循环,表单元素绑定

v-for:根据数据生成列表结构
数组经常和v-for结合使用
语法是(item,index)in 数据
item和index可以结合其他指令一起使用
数组长度的更新会同步到页面上,是响应式的

    <div id="app">
        <ul>
            <li v-for="item in arr">测试:{{item}}</li>
        </ul>

        <ul>
            <li v-for="(item,index) in arr">{{index}}测试:{{item}}</li>
        </ul>

        <h2 v-for="item in food">{{item.name}}</h2>
    </div>

    <script>
        var app=new Vue({
            el:"#app",
            data:{
                arr:[1,2,3,4,5],
                food:[
                    {name:"汉堡"},
                    {name:"三明治"},
                    {name:"饺子"}
                ]
            },

        })
    </script>

v-on补充:传递自定义参数,事件修饰符
事件绑定的方法写出函数调用的形式,可以传入自定义参数
定义方法时需要定义形参来接收传入的实参
事件的后面跟上 .修饰符 可以对事件进行限制
.enter 可以限制出发的按键为回车
事件修饰符有多种

    <div id="app">
        <input type="button" value="点击" @click="test">
        <input type="button" value="点击" @click="doIT(666,'老铁')">
        <input type="text" @keyup.enter="sayhi">
    </div>
    
	<script>
         var app = new Vue({
             el:"#app",
             methods:{
                 test:function(){
                     console.log("hello world");
                 },
                 doIT:function(p1,p2){
                     console.log("xxxxx");
                     console.log(p1);
                     console.log(p2);
                 },
                 sayhi:function(){
                     alert("吃了么")
                 }

             }
         })
     </script>

v-model:获取和设置表单元素的值(双向数据绑定)
v-model指令的作用是便捷的设置和获取表单元素的值
绑定的数据会和表单元素值相关联
绑定的数据——表单元素的值

    <div id="app">
        <input type="text" v-model="message">
        <h2>{{message}}</h2>
    </div>
     <script>
        var app=new Vue({
            el:"#app",
            data:{
                message:"xxxxx"
            }
        })
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值