Vue基础知识

新建学习交流QQ群:1026682857 欢迎有兴趣的朋友 前来一起学习交流。

Vue特点

  • JavaScript框架
  • 简化DOM操作
  • 响应式数据驱动

*官方站点:https://cn.vuejs.org

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

<!-- 生产环境版本,优化了尺寸和速度 -->
<script src="https://cdn.jsdelivr.net/npm/vue"></script>

简单Vue的开发步骤

  1. 导入Vue.js
  2. 创建Vue实例对象,并设置属性
  3. 使用插值表达式把数据渲染到页面上

el : 挂载点

  • Vue实例的作用范围
    作用范围在于el挂载元素的内部有效
  • Vue可用的选择器
    可以使用ID选择器,class选择器,标签选择器,css选择器
  • Vue可操作的DOM元素
    不可以对html元素和body元素进行挂载

data : 数据对象

  • 可以支持基础数据类型,数组类型,对象类型
  • 渲染复杂类型数据时 需要遵守js的语法

Vue指令

  • v-text
    设置标签的文本值(textContent) 使用时原本的数据将被替换
    <div id="app">
        <h1>插值表达式</h1>
        <h2 v-text="message"></h2>
        <h2>{{message}}</h2>
        <h3> v-text="message" 与 \{\{message\}\} 功能类似 后者可用于界面级的字符拼接</h3>
        <hr>
        <h2 v-text="message"></h2>
        <h2>test {{message}} </h2>
    </div>

    <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
    <script>
        var app = new Vue({
            el: "#app",
            data: {
                message: "this is a message!"
            }
        });
    </script>
  • v-html
    设置标签的innerHTML
    <div id="app">
        <p v-html="context"></p>
    </div>
    
    <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
    <script>
        var app = new Vue({
            el: "#app",
            data: {
                context: "<a href='#' > this is a URL </a>"
            }
        });
    </script>
  • v-on
    设置事件处理函数 为元素绑定事件
<div id="app">
    <!--方式一-->
    <input type="button" @click="doClick">
    <!--方式二-->
    <input type="button" v-on:click="doClick">
    <!-- 两种方式效果和含义相同 -->
</div>
var app = new Vue({
    el:"#app#,
    methods:{
        doClick:function(){
            alert("this is a click Event Test");
        }
    }
});
  • v-show
    根据表达式的值,切换元素的显示和隐藏 常用于广告、遮罩层等(通过设置display样式实现)
    true为显示 false为隐藏
<div id="app">
    <img src="..." v-show="true">
    <img src="..." v-show="isShow">
    
</div>
var app = new Vue({
    el:"#app",
    data:{
        isShow:false,
    }
});
  • v-if
    根据表达式的值,切换元素的显示状态(直接操纵Dom元素)
<div id="app">
   <p v-if="true">显示一个p标签</p>
   <p v-if="false">不显示一个P标签</p>
   <p v-if="isShow" >动态绑定一个标签的显示状态</p>
</div>
var app = new Vue({
    el:"#app",
    data:{
        isShow:false,
    }
});
  • v-bind
    设置元素的属性(src 、title、class等)可应用三元表达式
<div id="app">
    <!--方式一-->
    <img v-bind:src="imgSrc" v-bind:title="title + '1234'">    
    <!--方式二-->
    <img :src="imgSrc" :title="title + '1234'">
    <!--两种方式效果相同-->
</div>
var app = new Vue({
    el:"#app",
    data:{
        imgSrc:"URL"
        title:"title"
    }
});
  • v-for
    根据数据生成列表结构(响应式更新)
<div id="app">
    <ul>
        <li v-for="(item,index) in arr" :title="item">
            序号{{index+1}}  内容{{item}}
        </li>
    </ul>
</div>
var app = new Vue({
    el:"#app",
    data:{
        arr:[1,2,3,4,5]
    }
});
  • v-on 自定义参数和事件修饰符
<div id="app">
    //自定义参数
    <input type="button" @click="doClick(arg1)" />
    //事件修饰符
    <input type="text" @keyup.enter="doMessage" />
</div>   
var app = new Vue({
    el:"#app",
    methods:{
        doClick:function(arg1){
            ...
        },
        doMessage:function(){
            ...
        },
    }
});

*详情见:https://cn.vuejs.org/v2/api/#v-on

  • v-model
    获取和设置表单元素的值(双向绑定)
<div id="app">
    <input type="text" v-model="message" />
</div>
var app = new Vue({
    el: "#app",
    data:{
        message:"test",
    }
});
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值