VUE基础知识入门

VUE基础知识入门

VUE官方文档教程链接: VUE

1.什么是Vue.js

Vue.js(读音 /vjuː/, 类似于 view) 是一套构建用户界面的渐进式框架。它的作者是位中国人–尤雨溪(EvanYou).

它提供了 MVVM 数据绑定和一个可组合的组件系统,具有简单、灵活的API。

很多使用过vue的程序员这样评价它,“vue.js兼具angular.js和react.js的优点,并剔除了它们的缺点”。


2.Vue的优点

∷ 小而简单,轻量级框架,上手容易,简单易学,便于与第三方库或既有项目整合

∷ 只关注视图层, 采用自底向上增量开发的设计

∷ 它的目标是通过尽可能简单的 API 实现响应的数据绑定和组合的视图组件

∷ 当与现代化的工具链以及各种支持类库结合使用时,Vue 也完全能够为复杂的单页应用提供驱动。

∷ Vue封装了大量的组件,可以直接使用,简便而而美,省去了大量的Js代码.(有字体\主题\各种表单,表格,图标,按钮,提示框,导航栏等等)

链接: Vue组件Element官方文档:组件|Element


3.Vue的使用

创建一个 .html文件,然后通过如下方式引入Vue:

<!-- 开发环境版本,包含了有帮助的命令行警告 -->

<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>

或者:

<!-- 生产环境版本,优化了尺寸和速度 -->

<script src="https://cdn.jsdelivr.net/npm/vue"></script>

再或者:

    到Vue官网 Vue官网  点击左侧安装  直接下载并用 <script> 标签引入,Vue 会被注册为一个全局变量

下载安装

可以看到有两个版本 , 我们使用开发版本即可. 生产版本是压缩后的版本,删除了警告,更精悍简单


①. 初识Vue的简单例子: Hello Vue!

Vue的简单例子: Hello Vue!

运行结果:   Hello Vue!

  new Vue 是创建了一个Vue实例;  

  el: '#app'意思是让Vue实例去接管id为'app'的div里面的内容,即为Vue实例和这个div的Dom元素做了绑定,el绑定的div为挂载    点

  data : 就是vue的一些数据

  {{message}} : 通过el和div做了绑定之后,可以直接通过{{}}双花括号的形式显示在data里的message的数据

  如果在别的div里写{{message}}是不会显示'Hello Vue!'的,只会显示{{message}},因为Vue实例只会去处理id为'app'的    这个div里面的内容.

②.  Vue的常用指令

Vue指令以v-开头,作用在HTML元素上,将指令绑定在元素上时,会给绑定的元素添加一些特殊行为,可将指令视作特殊的HTML属性

 ∷  v-model  在表单元素上实现双向绑定

 ∷  v-if指令   条件判断指令,根据表达式值的真假来插入或删除元素,表达式返回一个布尔值

 ∷  v-show指令  条件渲染指令,与v-if不同的是,无论v-show的值为true或false,元素都会存在于HTML代码中;而只有当v-if      的值为true,元素才会存在于HTML代码中。v-show指令只是设置了元素CSS的style值

 ∷  v-else指令   可配合v-if或v-show使用,v-else指令必须紧邻v-if或v-show,否则该命令无法正常工作。v-else绑定的元素能否   渲染在HTML中,取决于前面使用的是v-if还是v-show。若前面使用的是v-if,且v-if值为true,则v-else元素不会渲染;若前面使用的是v-show,且v-show值为true,则v-else元素仍会渲染到HTML。  

 ∷  v-for指令   循环指令,基于一个数组渲染一个列表,与JavaScript遍历类似,语法如下:

       v-for = "item in items"

 ∷  v-bind指令    给DOM绑定元素属性,语法如下:

       v-bind:argument="expression"

       其中,argument通常是HTML元素的特性,如:v-bind:class="expression"。

       注:v-bind指令可以缩写为:冒号。如::class="expression"。

 ∷   v-on指令   用于监听DOM事件,语法与v-bind类似,如监听点击事件v-on:click="doSth"

       注:v-on指令可以缩写为@符号。如:@click="doSth"。 

   ③. Vue的键盘事件

<!--@keydown.xx,点什么键,就是按下什么键触发事件-->

<input @keydown.enter="keyEnter()"/>   //按下回车键即触发事件

<input @keydown.a="kerA()" />   //按下键盘的A键

   ④. Vue的事件冒泡

   什么是事件冒泡:  在div的层层嵌套中,触发最里面的事件,会相继触发一层层的事件,即为事件冒泡

   阻止冒泡:  给事件添加@click="show($event)"

show: function (e) {

     alert("this is 3");

     e.stopPropagation();  //阻止

}

或者直接@click.stop="show($event)",就不用写e.stopPropagation();

<!--阻止事件默认方法-->

<button @click.prevent.stop="show()">text</button>

    ⑤.  methods: Vue方法

methods: {

//这个是要执行的函数

     hello: function() { }

}

  methods里面放vue的方法

     ⑥. 钩子函数 :mounted

   对于前端来说,钩子函数就是指在所有函数执行前,我先执行了的函数,即 钩住 我感兴趣的函数,只要它执行,我就先执行。

mounted: function() {

//这个是钩子函数 ,如果hello函数要执行,必须先执行钩子函数 

}

       ⑦.计算属性关键词: computed。

      计算属性在处理一些复杂逻辑时是很有用的。

我们来看下官网给我们的案例:

翻转字符串

以上的模板变的很复杂起来,也不容易看懂理解。在模板中放入太多的逻辑会让模板过重且难以维护.

所以这时候我们就需要使用计算属性:

计算属性 computed案例

            ⑧. computed vs methods

    我们可以使用 methods 来替代 computed,效果上两个都是一样的,但是 computed 是基于它的依赖缓存,只有相关依赖        发生改变时才会重新取值。而使用 methods ,在重新渲染的时候,函数总会重新调用执行。  可以说使用 computed 性能会      更好,但是如果你不希望缓存,你可以使用 methods 属性。

            ⑨. Vue.js 监听属性 watch

  watch 来响应数据的变化。当你有一些数据需要随着其它数据变动而变动时,在一些情况下我们会需要用到watch

以下实例通过使用 watch 实现计数器:

通过使用 watch 实现计数器

效果:

效果


以上就是我总结的Vue的常用基础,当然还有很多很多,我就不一一举例了,大家可以到Vue的官网进行学习,Vue.也可以在网上找一些学习视频跟着练习,相信大家只要静下来好好去学习,是很容易就学好Vue的,机油!祝愿大家2019心想事成,工作顺利,升职加薪,白天有说有笑,晚上睡个好觉!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,088评论 5 459
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,715评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,361评论 0 319
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,099评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 60,987评论 4 355
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,063评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,486评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,175评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,440评论 1 290
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,518评论 2 309
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,305评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,190评论 3 312
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,550评论 3 298
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,880评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,152评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,451评论 2 341
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,637评论 2 335

推荐阅读更多精彩内容

  • 这篇笔记主要包含 Vue 2 不同于 Vue 1 或者特有的内容,还有我对于 Vue 1.0 印象不深的内容。关于...
    云之外阅读 5,040评论 0 29
  • # 传智播客vue 学习## 1. 什么是 Vue.js* Vue 开发手机 APP 需要借助于 Weex* Vu...
    再见天才阅读 3,509评论 0 6
  • vue概述 在官方文档中,有一句话对Vue的定位说的很明确:Vue.js 的核心是一个允许采用简洁的模板语法来声明...
    li4065阅读 7,176评论 0 25
  • ## 框架和库的区别?> 框架(framework):一套完整的软件设计架构和**解决方案**。> > 库(lib...
    Rui_bdad阅读 2,882评论 1 4
  • Vue 实例 属性和方法 每个 Vue 实例都会代理其 data 对象里所有的属性:var data = { a:...
    云之外阅读 2,177评论 0 6