以前看到多少天学习系列,我都深感烦躁,短短几天怎么可以精通,那是对于他们而言。但是,今天我要写一个快速入门,本人觉得还是有一点用处,因为,我不可能在一天之内精通某种东西,却可以在一两小时入门。

回到vue本身,当初听说它只做view层。而向一般人隐藏了,其实它的view是带有model的。它的特点之一是双向绑定,但是它出现的频率太多,人们早就对它没那么惊喜了。如果你以前看过angular,过滤器,路由,指令这些一定不会陌生,在vue中它们都有。

下面便是我的一次快速入门,虽然说是快速入门,并不叫Javascript快速入门,看之前还要有JS的基础,我是带着三个问题:

  1. 作用域

  2. 自定义事件(event)和用户事件(methods)

  3. vue文件与普通引入的区别

1. 作用域

首先,我们看它的作用域,直接上代码。

// 1.定义
var MyComponent = Vue.extend({template: '<div>A custom component!</div>'
})// 2.注册
Vue.component('my-component', MyComponent)// 3.创建根实例
new Vue({el: '#example'
});

不小心就把组件的API文档贴上来了,我们看代码说明:如果有看过angular的同事,应该会对ng-app不陌生。那是表明它以下的东西都会在angular以内,ng-controller则是这个controller内的变量可以访问。同理,我们看3那里,实例化一个vue对象,el指明了它的作用域。就在这个example的元素。我们可以修改一下,加一个data看看:

new Vue({el: '#example',data: {text: 'hello,vue;}
});

不用猜也知道,这个text是可以绑定在example元素所在的范围内。下面,我们作死一下,试试在这个组件去访问
这个text属性。

var MyComponent = Vue.extend({template: '<div>{{text}} A custom component!</div>'
})

然后,就可以发现这并不能显示出来。这时候应该怎么做呢?回到文档,这是一个很好的方案,当你快速入门的时候,
无论什么时候都要想起文档,找不到再去网络上。篇幅有限,并不能从零开始教到一百,而且我也是跟你一样入门级的。废话不说回到代码。这里的text不能访问是正确的,一个组件就是要能够复用,为了达到这个目的,才跟外面的分开。但是components写法真的有data这个选项,但是只接收一个function。这样做也是为了每个组件可以独立。

组件实例的作用域是孤立的,可以使用 props 把数据传给子组件,这里就不多说了。

2. 自定义事件(event)和用户事件(methods)

我在翻文件的时候,看到了这样的东西。

{methods: {},events: {}
}

用户事件一般都放在methods,新手这时又看到了events,它们有什么区别呢?看标题。

至于详细的,还是要看文档。事件无非就是监听和触发,与angular相似,它也有on emit这类似的实现。

vue有一个比较有趣的东西,事件修饰符。或者其他构架也会有,但是看起来很有逼格。

绑定多个事件
<div v-on="click: a, keyup: b">也可以这样写
<div v-on:click="a" v-on:keyup="b">然后还有缩写
<div @:click="a" @:keyup="b">

3.vue文件与普通引入的区别

对于大型项目,可能会用vue文件这种方式来组织代码。这跟react就有点像了,样式,脚本,模板都在一个文件内。
这样很好管理,坏处就是初学者会晕,如果有好多的组件一起。

在这里注意一下,组件就是一个vue文件,然后都是通过require的方式进来(废话)。在普通引入脚本的方式,你可以这样创建组件和过滤器:

Vue.component('name', function(){// ...
});Vue.filter('name', function(){// ...
});

如果换到了vue文件这种模式,你得明白这是一个大前提,这是适合大型项目使用的,所以写法也会变得规范。这时,你会有components,filters这种目录,再通过require进入到你所需要的地方。所有写法都是模块化你要记得导出这个方法,这一点要注意。

<script>
import Hello from './components/Hello'
// import Filter from './filter/filter' 伪代码
export default {data: function() {return {text: 'hello'}},filters: {// up: Filter.up 伪代码up: function(val) {return val.toUpperCase();}},components: {Hello}
}
</script>

写在最后

vue.js应该快迎来2.0。不知道还要不要再来一个快速入门,vue.js发展得挺快,东西也像react类似的全家:vue-router,vuex。对于入门来说其实还是有点累,从最初只要引入一个文件,到使用构建工具,再到一系列全家桶。前端开发已经变得没那么纯粹,或者最后还是看一个项目怎么这些工具吧。

vue.js快速入门相关推荐

  1. (vue基础试炼_01)使用vue.js 快速入门hello world

    文章目录 一.需求案例 二.案例实现 2.1. 原始js写法 2.2. 怎样使用vue.js ? 2.3. 使用vue.js 写法 三.案例vue简述? 四.案例趣味延伸 五.表达值作用及嘱咐语 一. ...

  2. Vue.js快速入门之八:实现登录功能

    系统登录是指用户必须提供满足一定条件的信息后,才可以进入系统.最早系统一般是指用户名和密码,如今,登录方式已多元化,系统一般登录方式有:用户名+密码.二维码扫码登录.第三方授权登录.手机号+短信登录等 ...

  3. Vue.js快速入门+项目实战(源码)

    Vue.js电影网站项目 github 链接(如果觉得有用记得start哦~): 项目源代码链接 目录 前言 安装 Vue.js 1.Vue.js主要特性 2.Vue.js实例 3.Vue.js路由 ...

  4. Vue.js快速入门之五:Mockjs的使用和语法详解

    在前后端分离的开发中,需要前后台同时开发,但是在后端完成前,暂时是没有数据返回给前端使用的,如果先写静态后面再改,就有重复工作的内耗存在.所以开发初始前端会使用模拟数据,这里使用是mockjs. Mo ...

  5. 前端《Vue.js从入门到项目实战》PDF课件+《微信小程序实战入门第2版》PDF代码调试

    JS进行开发,正如一切的编程语言都立足于电元信号的正负极,即01码,可为什么软件都不采用二进制编码来 进行开发呢?这里面牵扯到一个成本的问题,这正是影响项目领导者进行决策的关键因素.Vue项目与原生J ...

  6. .NET Core实战项目之CMS 第六章 入门篇-Vue的快速入门及其使用

    写在前面 上面文章我给大家介绍了Dapper这个ORM框架的简单使用,大伙会用了嘛!本来今天这篇文章是要讲Vue的快速入门的,原因是想在后面的文章中使用Vue进行这个CMS系统的后台管理界面的实现.但 ...

  7. [Vue.js 1] 入门基础知识与开发

    最近接触的几个项目框架全部用到了Vue.js技术,没办法只能对vuejs进行深入学习,不过可喜的是Vue.js学习路线非常快,上手也是非常快的,所以对于前端开发也是主流的开发框架了.不过其中的js部分 ...

  8. 前端-Vue.js从入门到精通基础笔记(理论+实操+知识点速查)

    #[2022.3]尚硅谷Vue.js从入门到精通基础笔记(理论+实操+知识点速查) 前言 本文完全基于 参考资料:加工整理而成,包括其代码,案例,资源等.前置知识是学习尚硅谷的视频教程,本文配合其教程 ...

  9. 54 Node.js快速入门

    技术交流QQ群:1027579432,欢迎你的加入! 欢迎关注我的微信公众号:CurryCoder的程序人生 1.Node开发概述 1.1 为什么要学习服务器端开发基础 能够与后端程序员更加紧密的配合 ...

最新文章

  1. python 求和为正整数n的连续整数序列
  2. 深度操作系统 15 Beta——每一处都在“靓”变
  3. 面试官给我挖坑:rm删除文件之后,空间就被释放了吗?
  4. 通用数据保护条例_欧盟《通用数据保护条例》——2019年的形势
  5. python defaultdict函数_Python中defaultdict与lambda表达式用法
  6. 登上热搜!这可能是中国最穷的211大学
  7. onvif规范的实现:server端Discovery实现,通过OnvifTestTool12.06测试
  8. python自动化测试工具开发_Python+Selenium自动化测试教程连载(2)
  9. datagrid combobox 选择后显示valueField 而不是 textValue解决方法
  10. python操作redis集群是连接池么_python使用连接池操作redis数据库
  11. 音频文件如何转换成文字?
  12. 大家好,我是谢公子,来自深信服—深蓝攻防实验室
  13. mini6410 LED驱动程序及LED测试程序的设计
  14. linux配置tp路由器,手把手图解教程tplink r402m路由器配置
  15. 小米论坛php,黑橙新版小米社区discuz模板
  16. 移动终端开发详解总结(一)(kotlin版)| CSDN创作打卡
  17. 学习 CSAPP 对工作有帮助吗?一切从底层逻辑开始!
  18. 关于职业规划,尤其值得我们程序员学习
  19. Excel自动输入当前时间的公式
  20. Cocoa Touch Layer

热门文章

  1. 【Android基础】RecyclerView的设计艺术
  2. 幼儿园python_[Python]猜数字游戏AI版的实现(幼儿园智商AI)
  3. 树莓派私有云(OwnCloud)搭建(三) OwnCloud安装
  4. oracle的乐观锁和悲观锁
  5. 微信开发:微信js_sdk 分享,前端部分(二)
  6. kibana6.2.2安装
  7. 【转载】在服务器上用Fiddler抓取HTTPS流量
  8. 初创公司谁来当你们的运维
  9. 【读书笔记】iOS-ARC-不要向已经释放的对象发送消息
  10. Redis简介、与memcached比较、存储方式、应用场景、生产经验教训、安全设置、key的建议、安装和常用数据类型介绍、ServiceStack.Redis使用(1)...