Vue2基础(一)

Vue简介

Vue是一个渐进式的前端框架,什么是渐进式的呢? VUE全家桶

​ 渐进式意味着你可以将Vue作为你应用的一部分嵌入其中,或者如果你希望将更多的业务逻辑使用Vue实现,那么Vue的核心库以及其生态系统。比如Core+Vue-router+Vuex+axios,也可以满足你各种各样的需求。

Vue的特点和Web开发中常见的高级功能:

​ 1、解耦视图和数据

​ 2、双向数据绑定

​ 3、可复用的组件

​ 4、前端路由技术

​ 5、状态管理

​ 6、虚拟DOM

1、 Vue基本语法
	<div id="app">
        <!-- 语法解析vue中定义的变量 -->
        {{str}}
    </div>
    <script>
        // 生成一个Vue实例对象
        new Vue({
            el:'#app',    // el→element的缩写,找到需要绑定的元素
            // 定义变量/数据
            data:{
                str:'嘀咕嘀咕'
            }
        })
    </script>

{{}}插值语法:控制标签显示内容,固定的,里面是一个js环境,仅适用于有结果的表达式(变量/简单表达式)

2、 标签属性的修改

v-bind:动态操作标签属性

​ 语法:v-bind:属性名=“属性值”

​ 简写::属性名=“属性值”

​ ""中间相当于一个js环境,可以书写简单的表达式

<a v-bind:href="url1">百度一下</a>
<a :href="url2">淘宝一下</a>
3、 绑定事件

​ 语法:v-on:事件名=“值”

​ 简写:@事件名=“值”

<button v-on:click="num--">-1</button>
<button @click="num++">+1</button>
4、 函数调用表达式
	   new Vue({
            el:'#app',
            data:{
                num:10
            },
            // 定义方法
            methods:{
                // 在方法中使用vue定义好的数据前面要加this
                add:function(){
                    this.num++
                },
                addFive(n){
                    this.num += n
                }
            }
        })
5、 Vue控制类名
 		<!-- 控制类名使用对象的形式动态设置类名 -->
        <p :class="{active:bool?'active':'',current:'current'}">{{num}}</p>
        <!-- 控制类名使用数组的形式只要这个数据项有这个类就会有 -->
        <p :class="['active','current']">{{num+10}}</p>
6、 v-if和v-show
		<!-- v-if后面的值是false表示删除了DOM 有DOM操作的 -->
        <p v-if="bool1">第一个p标签</p>
        <!-- 只是在样式层面的隐藏 -->
        <p style="display: none;">第二个p标签</p>
        <!-- v-show只是样式层面的显示和隐藏不涉及到DOM操作 -->
        <p v-show="false">第三个p标签</p>
        <button @click="bool1 = false">删除第一个标签</button>
        <hr>
        <!-- v-if和v-else使用注意点:中间不能有其余的标签,必须是挨着的兄弟元素 -->
        <p v-if="bool2">第四个p标签</p>
        <p v-else>第五个p标签</p>
        <hr>
        <p v-if="type=='a'">第1个p标签</p>
        <p v-else-if="type=='b'">第2个p标签</p>
        <p v-else-if="type=='c'">第3个p标签</p>
        <p v-else>第4个p标签</p>
7、 v-for

v-for:遍历数组对象集合……

​ 语法:v-for=“参数1,参数2… in 数组名/对象名”

​ 数组:

​ 参数1 -→ 数据项

​ 参数2 -→ 索引

​ 对象:

​ 参数1 -→ 值

​ 参数2 -→ 键

		<ul>
            <li v-for="item,index in list">{{item}} [{{index}}]</li>
        </ul>
        <hr>
        <ul>
            <li v-for="value,key in obj">{{key}}:{{value}}</li>
        </ul>
        <hr>
        <ul>
            <li v-for="item in arr">{{item.name}}:{{item.age}}</li>
        </ul>
8、 v-model
v-model:实现数据双向绑定

​ 实质:改变了v-model的值从而改变了txtVal的值

<input type="text" v-model="txtVal">
<p>{{txtVal}}</p>
<script>
        new Vue({
            el:'#app',
            data:{
                txtVal:'初始值',
            }
        })
    </script>
9、如何 引入Vue

方式一:直接CDN引入

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

方式二:下载和引入

// 开发环境 https://vuejs.org/js/vue.js
// 生产环境 https://vuejs.org/js/vue.min.js

方式三:NPM安装

10、 行内样式的控制
<p :style="[{width: wid,height:'100px'},{backgroundColor:'pink'}]">{{num}}</p>
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值