当前位置:首页 > 技术分析 > 正文内容

初学Vue(一) -- Vue简单入门

ruisui883周前 (04-11)技术分析11

初学Vue(二) -- 条件渲染、修饰符、循环

初学Vue(三) -- 生命周期、过滤器、监听属性、计算属性

初学Vue(四)-- axios前后端交互、组件

初学Vue(五) -- 路由


vue - 国人开发制作的

类似于 view 的发音

vue经过了几次大的版本波动

0.x 0.6版本

1.x 版本

2.x 版本 - 现在常用的

为什么要介绍版本改动呢,因为不同版本语法和用法有差别,用起来比较麻烦

react 因为版权原因,导致百度等企业转用vue,导致vue突然火起来,也有支持国人的成分,当然其中的也缺不了它的确好用。

完整版演示代码


正式部分

vue学习建议先学会js,json

有的人觉得vue或angular不够jquery方便,首先,vue和angular是数据驱动的,而jquery是事件驱动的,也就是说用jquery需要想着给赋予事件,而vue与angular只要想着数据怎么变化就行了。

vue1.0下载

vue2.0下载


vue使用

html部分:
//首先当然是引入vue.js文件
<script src="vue.js"></script>

//vue标准是要用两对花括号圈住数据名的
{{msg}}


js部分:
//使用vue要先new 一个vue对象出来传入json格式的数据
    <script>
        new Vue({
            //作用域:el - element缩写
            el:'body',
            //输出的数据
            data:{
                msg:'hello vue!',
            }
        })
    </script>

{{}} -> 必须在作用域里面放入输出的模板,模板里面放入data里面你自己定义的变量

注意:只有ie8 以上的浏览器才能兼容vue


如何选取class或id为作用域

{{msg}}
<script> new Vue({ //这里选区类与id是与jquery的方式是一样的,id的话就是#myDiv el: '.myDiv', data: { msg:'hello vue!', } }) </script>

常用指令

类似于angular 的常用指令有 ng-show /ng-repeat,vue当然也有。

  • v-show:类似于display,true就是显示false就是隐藏
    

    
<script> //这里定义作用域是必须的,使用vue语句如果不定义作用域是不会起作用的 new Vue({ el:'body', }) </script>


    
<script> new Vue({ el:'body', //也可以利用数据传输来使用,更加灵活 data:{ dis:false, } }) </script>
  • v-for:循环输出数组或json数据
    
{{i}}{{$index}}
{{i}}
{{key}}=>{{value}}
{{$key}}=>{{i}}
<script> new Vue({ el:'body', data:{ //这是个字符串数组 arr:['a','b','c'], json:{ bill:18, bill2:21, bill3:24 } } }) </script>
  • v-for: {{index}} -> 索引值,{{key}} -> key值因为json是键值对,可以理解为数组的索引与值的关系,所以可以用不同方式访问。{{index}}可以进行计算 => {{index+10}} 从10开始计数

v-model:双向绑定 -- 数据和输出绑定


    
        
    {{msg}}
    <script>
        new Vue({
            el:'body',
            data:{
                msg:'',
            }
        })    
    </script>

Vue事件书写区

    

    
<script> new Vue({ el:'body', data:{ dis:true, }, //vue 事件区域,所有事件控制写在这里 methods:{ change:function() { this.dis=!this.dis; } } }) </script>
  • v-on有简写形式@ ,可以直接把v-on替换为@,@click='change'。

事件对象:event

  • 查看事件对象这些演示里面的html部分关于body与html的样式设置是必须的,不然body与html会按内容的大小填充,而不是布满整个页面
html部分:

//这里是必须设置这个样式,不然body的大小是根据页面内容调整大小的



<script>
        new Vue({
            el:'body',
            methods:{
 //事件对象,如果传参只有一个,默认就是事件对象,如果有多个参数传入,那么事件对象就是$event
                show:function(e){
                    console.log(e);
                }
            }
        })
    </script>
  • `@click="show"是可以传递参数给事件的,当它传递参数时,事件处理的形参不再默认为是时间对象,当我们传递参数给事件又想看事件对象时可以用$event
html部分:



js部分:
    <script>
        new Vue({
            el:'body',
            methods:{
                show:function(e,$event){
                    console.log(e,event);
                }
            }
        })
    </script>

事件冒泡:事件冒泡的三种阻止方法

  • 先来看下事件冒泡没有阻止的情况这些演示里面的html部分关于body与html的样式设置是必须的,不然body与html会按内容的大小填充,而不是布满整个页面
html部分:



    
js部分: <script> new Vue({ el:'body', methods:{ myDiv:function() { alert('i am div'); }, myBody:function(event){ alert('i am body'); } } }) </script>
  • event.cancelBubble=true;
html部分:



    
js部分: <script> new Vue({ el:'body', methods:{ myDiv:function() { event.cancelBubble=true; alert('i am div'); }, myBody:function(event){ alert('i am body'); } } }) </script>
  • event.stopProgation();
html部分:



    
js部分: <script> new Vue({ el:'body', methods:{ myDiv:function() { event.stopProgation(); alert('i am div'); }, myBody:function(event){ alert('i am body'); } } }) </script>
  • 直接在click后接.stop其中,上面两个event都是原生方法,所以虽然能用,但是还是不够方便,所以这里使用vue方法来
html部分:



    
js部分: <script> new Vue({ el:'body', methods:{ myDiv:function() { alert('i am div'); }, myBody:function(event){ alert('i am body'); } } }) </script>

阻止默认事件 -- 两种默认事件阻止方式

  • event.preventDefault();这个是原生js方法,能用但是也不够vue方法方便
html部分:
    


            
js部分:
    <script>
        new Vue({
            el:'body',
            methods:{
                myBody:function(){
                    event.preventDefault();
                    alert('我右键了');
                }
            }
        })
    </script>
  • @click.prevent="";
html部分:
    


            
js部分:
    <script>
        new Vue({
            el:'body',
            methods:{
                myBody:function(){
                    alert('我右键了');
                }
            }
        })
    </script>

键盘事件 -- 键盘监控事件利用keydown/up来监控用户按下了什么按键

  • 键盘监控事件
html部分:
    


    
js部分:
        <script>
        new Vue({
            el:'body',
            methods:{
                mybody:function(){
                    alert('我按键盘了');
                }
            }
        })    
    </script>
  • event.keyCode监控用户按键的ASCII码,可以通过查看keyCode来赋予不同按键不同事件,例如通过console.log(event.keyCode);可以看到按键A的键值是65,那么我们可以设置只有当按下A键时才显示的事件@keydown.65等效于if(e.keyCode==65)
html部分:
    


    
js部分:
        <script>
        new Vue({
            el:'body',
            methods:{
                mybody:function(){
                    alert('我按了A键');
                }
            }
        })    
    </script>
  • 可以组合键使用
html部分:
    


    
js部分:
        <script>
        new Vue({
            el:'body',
            methods:{
                mybody:function(){
                    alert('我按了abc键');
                }
            }
        })    
    </script>

扫描二维码推送至手机访问。

版权声明:本文由ruisui88发布,如需转载请注明出处。

本文链接:http://www.ruisui88.com/post/3415.html

标签: vue 修饰符
分享给朋友:

“初学Vue(一) -- Vue简单入门” 的相关文章

Git 分支管理策略与工作流程

(预警:因为详细,所以行文有些长,新手边看边操作效果出乎你的预料)团队开发中,遵循一个合理、清晰的Git使用流程,是非常重要的。否则,每个人都提交一堆杂乱无章的commit,项目很快就会变得难以协调和维护。看完这篇文章后,涉及GIT的工作中就会减少因为规范问题导致工作出错,当然如果你现在暂时还未有合...

迁移GIT仓库并带有历史提交记录

迁移git仓库开发在很多时候,会遇到一个问题。GIT仓库的管理,特别是仓库的迁移。我需要保留已有的历史记录,而不是重新开发,重头再来。我们可以这样做:使用--mirror模式会把本地的分支都克隆。// 先用--bare克隆裸仓库 git clone git@gitee.com:xxx/testApp...

快速掌握 Git:程序员必会的版本控制技巧

在现代软件开发中,版本控制系统(VCS)是开发人员不可或缺的工具。无论是个人项目,还是多人协作的团队开发,良好的版本控制都能确保代码管理的高效性与稳定性。而在版本控制系统中,Git 凭借其分布式、灵活性和高效性,成为了最流行的工具之一。几乎所有的开发团队都在使用 Git 来管理代码版本、协作开发和追...

壹啦罐罐 Android 手机里的 Xposed 都装了啥

这是少数派推出的系列专题,叫做「我的手机里都装了啥」。这个系列将邀请到不同的玩家,从他们各自的角度介绍手机中最爱的或是日常使用最频繁的 App。文章将以「每周一篇」的频率更新,内容范围会包括 iOS、Android 在内的各种平台和 App。本期继续歪楼,由少数派撰稿作者@壹啦罐罐介绍他正在使用的...

vue中router常见的三种传参方式

目录:我们在使用vue开发的过程中使用router跳转的时候肯定会遇到传参的情况;一般情况就三种传参是最常见的;那我们就来看看都有那几种传参方式吧!第一种:{ path: '/mall:id', name: 'Mall', component:...

22《Vue 入门教程》VueRouter 路由嵌套

1. 前言本小节我们介绍如何嵌套使用 VueRouter。嵌套路由在日常的开发中非常常见,如何定义和使用嵌套路由是本节的重点。同学们在学完本节课程之后需要自己多尝试配置路由。2. 配置嵌套路由实际项目中的应用界面,通常由多层嵌套的组件组合而成。同样地,URL 中各段动态路径也按某种结构对应嵌套的各层...