一、 Vue父子 组件之间传值
vue使用中,经常会用到组件,好处是:
1、如果有一个功能很多地方都会用到,写成一个组件就不用重复写这个功能了;
2、页面内容会简洁一些;方便管控;
子组件的传值是通过props来传递数据,$emit来触发事件;
下面是一个简单的子组件props传值:
父组件的部分:
首先引入组件,在组件上绑定你要传给组件的值;
然后,在组件里通过props来接收你从父页面传过来的值;so,父组件把值传给子组件就完成了;
下面是一个子组件在把值传给父组件的例子:
父组件部分:
子组件部分:
先是<nobr aria-hidden="true" style="box-sizing: border-box; outline: 0px; margin: 0px; padding: 0px; transition: none 0s ease 0s; border: 0px; max-width: none; max-height: none; min-width: 0px; min-height: 0px; vertical-align: 0px; line-height: normal; text-decoration: none; white-space: nowrap !important; font-family: KaTeX_Main, "Times New Roman", serif; overflow-wrap: break-word;">change监听input值的变化,通过</nobr><math xmlns=">
关键点:通过:id="getId(info)"将info属性(props)值传递到方法,然后再设置值,网上的watch方法试了无效,这个方法实测有效
源码如下:
<page v-bind:info="paginationVo" ></page>
// 注册 - 名字不能大写 分页组件<page v-bind:info="paginationVo" ></page>
Vuecomponent('page', {
// 声明 属性
props: ['info'],
template: '<ul :id="getId(info)" class="c_page"><li v-if="isShowPreBtn"><button v-on:click="btnHandler(-1)">上一页</button></li><li v-if="isShowNextBtn"><button v-on:click="btnHandler(-2)" >下一页</button></li></ul>',
data: function() {
return {
counter: 0,
paginationVo:{},
isShowPreBtn:false,
isShowNextBtn:false,
}
},
mounted() {
consolelog("-------mounted:"+JSONstringify(thispaginationVo));
现在我们通过webpack+vue-cli搭建起了一个vue项目的框架,如果我们需要在vue组件中使用axios向后台获取数据应该怎么办呢?
通常情况下,我们搭建好的项目目录应该是这样子的
首先需要安装axios,这个会npm的都知道
下一步,在mainjs中引入axios
import axios from "axios";
与很多第三方模块不同的是,axios不能使用use方法,转而应该进行如下 *** 作
Vueprototype$axios = axios;
接着,我们就可以在Appvue中使用axios了
created:function(){ this$axiosget("/seller",{"id":123})then(res=>{ consolelog(resdata); }); }
可以通过这样的方法来获取的,具体如下:
v-for=(item,index)in 需要循环的列表对象就可以达到目的了,而在括号里面的参数item是循环的每一个元素,index参数是循环的次数或者是下标的,item可以是一个简单数据类型,也可以是一个复杂的复合类型。
以上就是关于VUE父子组件之间的传值,以及兄弟组件之间的传值全部的内容,包括:VUE父子组件之间的传值,以及兄弟组件之间的传值、解决vue组件props传值对象获取不到的问题、vue 全局组件component 获取props值等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)