vue组件间的参数传递,vue组件与组件之间传值

  vue组件间的参数传递,vue组件与组件之间传值

  这篇文章主要介绍了某视频剪辑软件的组件间传值(包括Vuex),全文通过举例子及代码的形式进行了一个简单的介绍,希望大家能够理解并且学习到其中知识

  

目录

   父传子:子传父:在不使用状态管理的情况下,组件间传值的方式是通过父传子的方式或者兄弟组件传值。

  

父传子:

  父组件:

  模板

  差异

  hello world:需要数据=内容/hello world

  /div

  /模板

  脚本

  从导入你好,世界./components/HelloWorld.vue

  导出默认值{

  组件:{

  编译

  },

  data(){

  返回{

  内容:"内容"

  }

  }

  }

  /脚本

  style lang=less 范围

  /风格

  儿子组件(子组件名称为HELLOWORLD):

  模板

  差异

  h1HELLOWORLD/h1

  /div

  /模板

  脚本

  导出默认值{

  道具:[needData],

  data(){

  返回{

  h:这个需要数据,

  }

  },

  已安装(){

  console.log(这个h);

  }

  }

  /脚本

  style lang=less 范围

  /风格

  

子传父:

  父组件:

  模板

  差异

  hello world @ send data= get data /hello world

  /div

  /模板

  脚本

  从导入你好,世界./components/HelloWorld.vue

  导出默认值{

  组件:{

  编译

  },

  data(){

  返回{

  }

  },

  方法:{

  getData(sonData){

  console.log(data=,sonData);

  },

  }

  }

  /脚本

  style lang=less 范围

  /风格

  SonComponent:

  模板

  差异

  h1HELLOWORLD/h1

  /div

  /模板

  脚本

  导出默认值{

  data(){

  返回{

  内容:"内容"

  }

  },

  已安装(){

  这个. emit(sendData ,这个。内容);

  }

  }

  /脚本

  style lang=less 范围

  /风格

  效果图:

  实际上,为了数据能在父子组件间传值;还可以通过调用父组件的函数或调用子组件的函数的方式实现传值100 .某视频剪辑软件中子组件调用父组件的函数

  https://www.jb51.net/article/134732.htm

  某视频剪辑软件父组件调用子组件的函数

  https://www.jb51.net/article/219793.htm

  Vuex是Vue框架中不可或缺的一部分;

  状态管理在需要多组件通信的时候显得格外重要;比如数据在父组件形成,但数据需要在子组件的子组件中使用时,就可以使用状态管理管理;或者说需要兄弟组件传值时,可以使用Vuex。

  在某视频剪辑软件的商店。射流研究…中有五个属性:

  分别是状态、突变、动作、获取器、模块

  结构为:

  让a={

  状态:{

  名称:"模块a "

  },

  //突变专门用于改变状态属性中的数据

  突变:{

  setFun(状态,项目){

  状态.名称=项目

  }

  }

  }

  导出默认的新Vuex .商店({

  //状态专门存放数据

  状态:{

  编号:100,

  使用组件:{

  姓名:甲,

  },

  使用组件:"内容",

  },

  //突变专门用于改变状态属性中的数据

  突变:{

  setstatefoun(状态,项目){

  状态。useb组件= b组件;

  }

  },

  动作:{

  httpGetData(store,item){

  setTimeout(()={

  控制台。日志(项目);

  商店。commit( setstateffun ,item);

  },3000)

  }

  },

  getters:{

  //调用吸气剂中的函数时没有入参

  getterFun1(状态){

  返回状态号

  }

  //调用吸气剂中的函数时有入参

  gettterFun2(状态){

  返回函数(瓦尔){

  返回state.num=瓦尔

  }

  }

  },

  模块:{

  模块答:答

  }

  });

  }

  状态中的数据可以在不同组件中访问获取。

  获取状态的数据:

  这个。$商店。州。州对象中的数据;

  例如

  让val=这个100美元商店。状态。num

  更改状态数据,就是调用状态管理的突变对象中的函数:

  这个. store.commit(函数名,数据);

  例如

  这个. store.commit(setStateFun , testSetItem );

  行动对象,用于在状态管理中发请求

  这个. store.dispatch(函数名,数据);

  例如

  这个. store.dispatch(httpGetData , testItem );

  吸气剂对象,类似某视频剪辑软件的计算属性

  这个store.getters函数名;

  例如

  //没入参时

  这个100美元商店。吸气剂。getter fun 1;

  //有入参时

  这个100美元商店。吸气剂。getter fun 2(123);

  Modules对象,类似于把需要使用的存储模块分离出来,每个module对象对应一个模块。

  //获取模块对象中的状态数据

  这个。$store.state.modules对象名称.状态值;

  例如

  这个。$store.state.ModuleA.name

  //使用modules对象中的函数突变

  这个。$store.commit(函数名,输入参数数据);

  例如

  这个。$store.commit(setFun , item ABC );

  //这里需要注意的是,如果modules模块和外部(不是modules对象模块)的mutations对象中存在同名的函数,那么同名的函数在被调用时就会被执行。

  这就是这篇关于Vue(包括Vuex)组件之间的价值转移的文章。有关Vue组件间价值转移的更多信息,请搜索我们以前的文章或继续浏览下面的相关文章。希望大家以后能多多支持我们!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: