在我用vue编写程序的时候,在传值的时候,经常会遇到些问题,像今天遇到了两个问题,在用父传子的方法去传值,当父组件中的要传的数据是for循环出来的或者是列表的时候,你想每次运行的事件,都去传某一行,或者某部分数据的时候,在子组件中用mounted(){},去加载并显示在页面上,还有就是在父传子中,把数据传过来了,但你运行事件的时候,哪个穿过来的数据值没有运行。

这里就涉及到了两个问题,一个就是生命周期的问题,另外一个就是异步的问题

向我第一个问题中,生命周期的问题,当我父传子的时候,我传过来的数据在mounted中运行后,就相当与这个生命已经走向了了结束了。当你在去让别的值传进来,他显示的数据也同样不会发生变化,因为他的生命已经结束了,那怎么让他的生命在活过来呢?这就需要用到我们的监听了,监听这个数据后,让生命起死回生

watch:{
父组件传过来的值:function(){
this.运行加载事件()
}
},

加入这个监听后,就能让你传不同的数据,在子组件中显示不同的数据了。

来再说下第二个问题,异步问题,什么叫异步,异步就是同时加载数据,同时加载的时候这时候就有坑了,大家要小心了。我的代码是这样写的

props: [
'app'
],
mounted() {
this.gettext()
},
methods: {
//显示数据
gettext: function() {
console.log(this.app)
}
}

这样写也不能说错对吧,但大家都知道mounted是组件加载完后在去加载他自己的,但prop比mounted加载的还要慢上一部所以我们这要去解决下异步的问题,这里我就放一个我常用的解决方案

 props: [
'app'
],
mounted() {
this.gettext()
},
methods: {
gettext: function() {
setTimeout(() => {
console.log()
}, 300)
},

这就是解决方案,加上一个定时器setTimeout他的时间最好在500以内,因为一个正常网页加载的速度差不多就是500ms作用

以上是我个人遇到的问题,并加以理解,可能有些地方我理解的有些偏差,但希望如果有遇到这些问题的人能够用着种方法去解决,并希望大神们,多多指教。

最新文章

  1. 封锁Skype的广告(非原创)
  2. Ninject之旅之五:Ninject XML配置
  3. lleetcode 292. Nim Game
  4. List<T> 添加 DataTable
  5. PowerDesiger 15逆向生成工程E-R图及导出word表格
  6. mysql初识之数据文件及其他文件
  7. 前端框架Bootstrap
  8. unity 引用 移动mm 支付sdk
  9. 页面常见效果js实现
  10. 【转载】图灵AngularJS入门教程
  11. 关于如何在Visual Studio上仿真调试安卓的U3D应用
  12. (FZU 2150) Fire Game (bfs)
  13. ASP.NET MVC - 多国语言的简单实现
  14. 【Bilinear interpolation】双线性插值详解(转)
  15. [Hbase]Hbase章2 Hbase读写过程解析
  16. 在Linux上进行内核参数调整
  17. php 文件上传类,功能相当齐全,留作开发中备用吧。
  18. ios虚拟机安装 (三)
  19. Daily Scrumming* 2015.10.25(Day 6)
  20. GP开发示例:数据库去重

热门文章

  1. zoj2412 dfs连通图
  2. YCOJ单向公路
  3. Ubuntu开机之后报错结局方法
  4. 在MacOs上安装sqlsrv Mojave - 找不到'php.h'文件
  5. [Usaco2012 Jan]Video Game
  6. AtCoder Grand Contest 003 E - Sequential operations on Sequence
  7. 模拟 HDOJ 5095 Linearization of the kernel functions in SVM
  8. 转--oracle查看允许的最大连接数和当前连接数等信息
  9. CentOS6.5下中文输入法的相关问题
  10. pspad的一个怪现象:在一些空行的位置出现个别不该出现的字符