Vue.js中组件传参的方法 - 基于webpack模板
在Vuejs中, 组件之间的传参是今天第一次接触, 之前写的组件互相之间都是独立的,
弗敢专也, 必以分人
环境: node.js npm vue-cli 以上安装请自行百度
一、项目创建
$ vue init webpack
这里需要注意的是“前面的一些项目名称什么的都可以直接回车,最后三个选项要注意,是代码检测”,这个代码检测有点烦的地方是要求代码必须极其规范,我tab符用4个空格都不允许,必须两个,所以到这里我选择不用代码检测,webpack编译后不影响使用!
上面的命令会在当前目录下生成一些文件,这些文件是基于webpack的vue项目模板,省时省力,不用自己去搭建环境(其实是因为我手动搭建的很不规范,有能力的同学自己来)
搭建好了环境,就可以开始码喽!
目录结构下我们注重的是src目录,里面是我们要敲码的地方(其他目录干嘛的在这里就不解释了,自行度)
二、开始
首先入口文件是main.js
可以看到
const vm = new Vue({
el: '#app',
router,
template: '<App/>',
components: { App }
})
此处new了一个实例,
并引入了路由 router
定义了实例的模板是App标签
我们进入与它同级的App.vue文件中
里面由3个结构组成
// html部分
<template></template> // JS部分
<script></script> // 样式部分
<style></style>
我们的html部分必须由一个根组件包裹
<template>
<div class="vue">
// code...
</div>
</template>
下面进入正题
<template>
<div class="vue">
<h1>This App Title</h1>
<my-name></my-name>
</div>
</template>
<script>
// 一般情况下,我会将组件放在components目录下
import Name from './components/Name.vue'
export default {
components: {
'my-Name': Name
}
}
</script>
上面我们就完成了对name组件的引用,我们还没有创建这个组件
进入components目录,新建文件Name.vue
<template>
<div class="name">
{{ myname }}
</div>
</template>
<script>
export default {
props: [
'yourname'
],
computed: {
myname () {
this.yourname
}
}
}
</script>
此处的重点是:props属性是接收传过来的值,另外使用了computed属性将收到的值赋给当前组件的data中的myname属性上,最终得以展示!
最后在App.vue组件中,使用
<my-name :yourname="fea"></my-name> 即可将值传给这个组件,并展示在页面上,具体你想用传来的值做什么,随你喽!
Vue.js中组件传参的方法 - 基于webpack模板的更多相关文章
- vue组件传参的方法--bus事件总线
定义:事件总线是实现vue任意组件之前传递参数的一种编程技巧,本质上就是组件的自定义事件.事件总线有很多种写法,具体的思路就是创造一个大家都可以访问到的公共的属性,在这个公共的属性上面可以调用$on, ...
- 兼容性js中setTimeout 传参“保值”方案
这里所谓“保值”,是指在setTimeout中指定的时间后,执行指定的方法所用到的“参数”值,跟执行setTimeout时该“参数”值一样.是不是有点懵?看如下例子: ================ ...
- js中函数传参的情况
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...
- vue.js 中组件的使用
Vue中组件的使用 方式一 1.使用Vue.extend创建组件 var com1 = Vue.extend({ template: '<h3>这是使用 Vue.extend 创建的组件& ...
- [js]js中函数传参判断
1,通过|| function fun(x,y){ x=x||0; y=y||1; alert(x+y); } fun(); 2.通过undefined对比 function fun(x,y){ if ...
- vue.js路由嵌套传参
通过配置路由时候按照: path:/user/:username/age/:age 这种就可以把参数传递 接受: $routes.params 接受到的是一个json格式的数据,
- vue路由传参及组件传参和组件方法调用
VUE路由和组件传参 第一种vue自带的路由传参的三种基本方式 1.通过name :id传参 子组件通过$route.name接收参数 { path: '/particulars/:id', name ...
- Vue.js之组件嵌套
Vue.js中组件嵌套有两种方式 第一种:注册全局组件 例如在components文件夹下新建一个User.vue组件,然后在main.js文件中注册全局组件 //注册全局组件 Vue.compone ...
- vue初始化、数据处理、组件传参、路由传参、全局定义CSS与JS、组件生命周期
目录 项目初始化 组件数据局部化处理 子组件 父组件 路由逻辑跳转 案例 组件传参 父传子 子组件 父组件 子传父 子组件 父组件 组件的生命周期钩子 路由传参 第一种 配置:router/index ...
随机推荐
- Java 基础知识总结
作者QQ:1095737364 QQ群:123300273 欢迎加入! 1.数据类型: 数据类型:1>.基本数据类型:1).数值型: 1}.整型类型(byte 8位 (by ...
- reids数据类型
今天第一次开通,写的不好,请谅解 redis并不是简单的key-value存储,实际上它是一个数据结构服务器,支持不同类型的值,也就是说,我们不仅仅把字符串当作键所指向的值, 如下这些数据 ...
- 构造函数与普通函数的区别还有关于“new”操作符的一些原理
有一种创建对象的方法叫做工厂模式,例如: function person(name,age){ var o=new Object(); o.name=name; o.age=age; return o ...
- Nodejs进阶:MD5入门介绍及crypto模块的应用
本文摘录自<Nodejs学习笔记>,更多章节及更新,请访问 github主页地址.欢迎加群交流,群号 197339705. 简介 MD5(Message-Digest Algorithm) ...
- lock invoke 死锁事例
代码如下: using System; using System.Collections.Generic; using System.Windows.Forms; using System.Threa ...
- [原创]普通的MySQL多表连接查询
- sublime设置 快捷键(自动换行)
一.菜单view > word wrap选上就好了 二.如果让编辑器默认是自动换行的话把它保存到配置中 Preference > Settings-User插入以下一行配置 "w ...
- java泛型探索——小特性
泛型特性(小篇幅) 1. 补充介绍一些常见的泛型特性: 类型参数T可以是recursive(类似递归性),它的边界可以是类型参数是自身的接口或类. 如我实现寻找最大值的方法,可以这么写: public ...
- MySql5.7环境搭建
1. 安装mysql的linux系统 [root@grewan ~]# cat /etc/redhat-release CentOS release 6.7 (Final) [root@grewan ...
- Redis学习-SortedSet
Sorted-Sets和Sets类型极为相似,它们都是字符串的集合,都不允许重复的成员出现在一个Set中.它们之间的主要差别是Sorted-Sets中的每一个成员都会有一个分数(score)与之关联, ...