详解vue-router和vue-cli以及组件之间的传值


Posted in Javascript onJuly 04, 2017

首先简单介绍使用vue-router的四个基本步骤:(为了方便演示,所有代码都写在一个文件里)

1.定义组件

详解vue-router和vue-cli以及组件之间的传值

详解vue-router和vue-cli以及组件之间的传值

2.定义路由

详解vue-router和vue-cli以及组件之间的传值

3.创建router实例并将定义好的路由传入

详解vue-router和vue-cli以及组件之间的传值

4.创建和挂载根实例

详解vue-router和vue-cli以及组件之间的传值

再来说一下vue-cli

一、安装vue-cli脚手架工具

cnpm install vue-cli -g

二、 创建项目

vue init webpack-simple vue_webpack

使用的是webpack-simple模板,项目名为vue_webpack , webpack-simple和webpack模板区别就是少了代码检查和单元测试这些东西.

三、安装项目需要的依赖文件

进入vue_webpack项目文件夹

cnpm install 安装完成后 项目目录下会多出node_modules文件夹,所有依赖文件都在里面,现在可以测试项目是否创建成功: npm run dev,默认8080端口,需要修改可以到 package.json中在scripts的dev后面添加--port8000。

App.vue后缀为.vue的文件基本格式为:template + script + style 三部分组成

四、项目上线

自己的项目文件都需要放到 src 文件夹下

项目开发完成之后,可以输入 npm run build 来进行打包工作,

打包完成后,会生成 dist 文件夹,如果已经修改了文件路径,可以直接打开本地文件查看

项目上线时,只需要将 dist 文件夹放到服务器就行了。

父组件和子组件之间进行数据传递:

在1.0中有$dispatch和$broadcast,但是在2.0中取消了,同样1.0中支持的双向数据绑定<Child :fff.sync=”hu”></Child>,在2.0中也不支持了现在依然还是使用下面的方式来做。

下面的例子中app为父组件,child和news为app的子组件,child1为child的子组件。下面将演示从app向另三个子组件传递数据 和 从三个子组件向app父组件传递数据。

先看一下目录结构:使用的是 webpack-simple模板

详解vue-router和vue-cli以及组件之间的传值

页面布局:

详解vue-router和vue-cli以及组件之间的传值

一、从子级向父级传递数据

1、通过事件的方式从子级向父级传递数据:

在父级中使用了模块后通过下面的方式和子集进行通信,getChildDate是在父级中定义的方法,这个名字随便取,通过该方法接收子集传来的数据。Getfromchild是在子集中定义的方法,通过$emit(参数)的形式向父级传递数据,其中第一个参数是在父级中绑定的方法这里就是Getfromchild,第二个参数是要传递的数据,如有多个就写成数组。

<Child v-on:getfromchild="getChildDate"></Child>

详解vue-router和vue-cli以及组件之间的传值

2、通过传递对象的方式

如果是父级传数据到子级后,修改子集数据的同时父级也要跟着改变,可以使用另一种方式,在从父级往子级传的时候把要传的数据a放在一个对象里,把这个对象传过去,在子级中我们不去修改这个对象,而是修改他的属性a的值,父级中同样会跟着改变。

二、通过props的方式从父级向子级传递数据:

在父级中:fff是在子级中要用的名字,如果fff前面有:那么后面的hu就是个变量,在data中要去定义。如果没有那么就是普通字符串。

<Child :fff=”hu”></Child>

在子级中:用props去接收传来的数据

父组件:

详解vue-router和vue-cli以及组件之间的传值

子组件child

详解vue-router和vue-cli以及组件之间的传值

子组件child的子组件child1

详解vue-router和vue-cli以及组件之间的传值

子组件news

详解vue-router和vue-cli以及组件之间的传值

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JavaScript之IE的fireEvent方法详细解析
Nov 20 Javascript
JS按字节截取字符长度实例
Nov 20 Javascript
教你如何在 Javascript 文件里使用 .Net MVC Razor 语法
Jul 23 Javascript
Javascript保存网页为图片借助于html2canvas库实现
Sep 05 Javascript
jQuery插件实现多级联动菜单效果
Dec 01 Javascript
bootstrap 设置checkbox部分选中效果
Apr 20 Javascript
jQuery 控制文本框自动缩小字体填充
Jun 16 jQuery
前端防止用户重复提交js实现代码示例
Sep 07 Javascript
@angular前端项目代码优化之构建Api Tree的方法
Dec 24 Javascript
一文读懂ES7中的javascript修饰器
May 06 Javascript
微信小程序中button去除默认的边框实例代码
Aug 01 Javascript
JS Html转义和反转义(html编码和解码)的实现与使用方法总结
Mar 10 Javascript
详解Angular.js中$http拦截器的介绍及使用
Jul 04 #Javascript
详解vue-cli 脚手架项目-package.json
Jul 04 #Javascript
Angular 2父子组件数据传递之@ViewChild获取子组件详解
Jul 04 #Javascript
详解node如何让一个端口同时支持https与http
Jul 04 #Javascript
Angular 2父子组件之间共享服务通信的实现
Jul 04 #Javascript
jQuery实现动态给table赋值的方法示例
Jul 04 #jQuery
Angular 2父子组件数据传递之局部变量获取子组件其他成员
Jul 04 #Javascript
You might like
十天学会php之第九天
2006/10/09 PHP
php一些公用函数的集合
2008/03/27 PHP
解析将多维数组转换为支持curl提交的一维数组格式
2013/07/08 PHP
php多种形式发送邮件(mail qmail邮件系统 phpmailer类)
2014/01/22 PHP
php中magic_quotes_gpc对unserialize的影响分析
2014/12/16 PHP
微信公众平台DEMO(PHP)
2016/05/04 PHP
PHP批量修改文件名称的方法分析
2017/02/27 PHP
Yii2框架控制器、路由、Url生成操作示例
2019/05/27 PHP
Prototype使用指南之hash.js
2007/01/10 Javascript
js获取元素在浏览器中的绝对位置
2010/07/24 Javascript
从数据结构的角度分析 for each in 比 for in 快的多
2013/07/07 Javascript
用js来获取上传的文件名纯粹是为了美化而用
2013/10/23 Javascript
javascript实现禁止右键和F12查看源代码
2014/12/26 Javascript
jQuery控制网页打印指定区域的方法
2015/04/07 Javascript
js获取页面description的方法
2015/05/21 Javascript
JavaScript  cookie 跨域访问之广告推广
2016/04/20 Javascript
JavaScript遍历求解数独问题的主要思路小结
2016/06/12 Javascript
JS实现复制功能
2017/03/01 Javascript
for循环 + setTimeout 结合一些示例(前端面试题)
2017/08/30 Javascript
vue 使用ref 让父组件调用子组件的方法
2018/02/08 Javascript
ES6知识点整理之对象解构赋值应用示例
2019/04/17 Javascript
解决qrcode.js生成二维码时必须定义一个空div的问题
2020/07/09 Javascript
利用vue3+ts实现管理后台(增删改查)
2020/10/30 Javascript
Python基础学习之常见的内建函数整理
2017/09/06 Python
基于Python代码编辑器的选用(详解)
2017/09/13 Python
Python爬取网页信息的示例
2020/09/24 Python
Python xlwings插入Excel图片的实现方法
2021/02/26 Python
实例讲解CSS3中的box-flex弹性盒属性布局
2016/06/09 HTML / CSS
八项规定个人对照检查材料思想汇报
2014/09/25 职场文书
2014感恩节演讲稿大全
2014/10/11 职场文书
2015年中秋节活动总结
2015/03/23 职场文书
运动会加油稿
2015/07/22 职场文书
建筑工程挂靠协议书
2016/03/23 职场文书
Android自定义scrollview实现回弹效果
2022/04/01 Java/Android
Spring Boot 实现 WebSocket
2022/04/30 Java/Android
SQL语句中EXISTS的详细用法大全
2022/06/25 MySQL