生命函数钩子的问题

生命函数钩子的问题

老师您好,在组件中使用axios的时候,在created中调用自定义的methods方法,在方法中获取异步的结果和在mounted中调用方法,在方法中获取异步的结果 这两者有什么区别?通常是用哪一种?

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

3回答
提问者 qq_那些荒废流年 2019-05-10 20:32:16

http://img1.sycdn.imooc.com//climg/5cd56f10000147af08970542.jpg老师您好,我说的在created调用methods是截图中的这个意思。像截图中这样就可以在created的时候进行异步数据的获取了是吧?

卡布琦诺 2019-05-10 18:58:26

还是有区别的哦

1、created官方定义如下:

created是在实例创建完成后被立即调用。在这一步,实例已完成以下配置:数据观测 (data observer),属性和方法的运算,watch/event 事件回调。然而,挂载阶段还没开始,$el 属性目前不可见。简单的理解就是:模板还没有被渲染成html,也就是这时候通过id什么的去查找页面元素是找不到的,所以,一般creadted钩子函数主要是用来初始化数据。

2、关于mounted,官方定义如下:

el 被新创建的 vm.$el 替换,并挂载到实例上去之后调用该钩子。如果 root 实例挂载了一个文档内元素,当 mounted 被调用时 vm.$el 也在文档内。简单理解就是:mounted钩子函数是在挂载完成以后也就是模板渲染完成以后才会被调用。因此,mounted钩子函数一般是用来向后端发起请求拿到数据以后做一些业务处理

created与mounted是vue的生命周期的钩子函数,与method没有直接关系。

希望可以帮到你!


  • 提问者 qq_那些荒废流年 #1
    老师我可以这样理解吗,只要和操作dom无关的,比如异步数据的获取,方法的运算等都可以使用created,但只要涉及dom就只能用mounted了,否则哪怕使用了created也只能等到模板渲染完了才可以进行调用
    2019-05-10 20:29:52
  • 卡布琦诺 回复 提问者 qq_那些荒废流年 #2
    也可以这么理解
    2019-05-11 10:09:30
  • 提问者 qq_那些荒废流年 #3
    麻烦您看下我评论中的那个截图 看下我表达的意思对不对
    2019-05-11 13:42:25
卡布琦诺 2019-05-10 11:29:05

1、axios可以简单的理解为是跨域获取数据,是与服务器进行数据交互的。

2、created 方法是在页面渲染时候调用的,在created的时候,视图中的html并没有渲染出来,所以此时如果直接去操作html的dom节点,是找不到相关的元素的,而method 中的方法是在页面渲染后调用的,所以这个时候是可以操作html的dom节点的。

在父子页面的关系中 ,如果子页面没有渲染,就不能在父页面中调用子页面的method 中的方法。

希望可以帮到你!

  • 提问者 qq_那些荒废流年 #1
    老师那mounted呢?
    2019-05-10 11:38:18
  • 卡布琦诺 回复 提问者 qq_那些荒废流年 #2
    mounted与method有点相似,mounted在模板渲染成html后调用,通常是初始化页面完成后,再对html的dom节点进行一些需要的操作。希望可以帮到你!
    2019-05-10 15:08:06
  • 提问者 qq_那些荒废流年 回复 卡布琦诺 #3
    老师那我想知道在created和mounted中调用methods中的方法有什么区别?我觉得好像没区别啊,照您那么说的话created只是提前对方法进行了调用,但是方法只有在页面渲染后才会被调用,所以和mounted相比也没啥区别呀
    2019-05-10 16:57:52
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
热门框架Vue开发WebApp 18版
  • 参与学习           人
  • 提交作业       209    份
  • 解答问题       3299    个

本路径是通过ES6基础知识、运用Zepto、Swiper、fullPag等移动端常用工具包、以及当下流行框架Vue,结合多个实战案例,还原真实开发场景,最终实现手机端购物商城网页开发。

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师