avalon2使用JQ的ajax功能怎么同时使用生命周期(onInit)?

1.我想要在生命周期(onlnit)里更新数据。

<div ms-controller="Msg">
    <span ms-text="@msg"></span>
</div>

按照 只留潇湘的月是一个大饼 的答案编写,ajax没有运行

var vm=avalon.define({
    $id:"Msg",
    msg:'',
    onInit:vmJson
});
function vmJson(){
    $.ajax({
        url:'http://hd.jxt189.com/heng_bama/api/parentCommunity/getViewTopicPage?pageIndex=1&pageSize=100&Authorization=undefined',
    type:'GET',
    data:{
        rows:5
    },
    dataType:'json',
    success:function(data){
        vm.msg=data.Msg;
    }
});
}

avalon作者提议用的onReady方法,运行成功:

var vm=avalon.define({
    $id:"Msg",
    msg:''
});

vm.$watch('onReady',function(){
    $.ajax({
        url:'http://hd.jxt189.com/heng_bama/api/parentCommunity/getViewTopicPage?pageIndex=1&pageSize=100&Authorization=undefined',
        type:'GET',
        data:{
            pageSize:5
        },
        dataType:'json',
        success:function(data){
            vm.msg=data.Msg;
        }
    });
})
阅读 4.2k
3 个回答
新手上路,请多包涵
var vm=avalon.define({
    $id:"Msg",
    msg:'',
    onInit:onInit
});
function onInit(){
    $.ajax({});
}

问了avalon作者 生命周期只能在组件中使用,这样使用要等下一个版本

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进