vue元素赋值无效

weixin_38048170 2017-12-26 04:13:19
 开发四年只会写业务代码,分布式高并发都不会还做程序员?->>>    最近使用vue.js的过程中遇到了,一个问题。用ajax请求后台的值给vue元素赋值之后属性值任然为空。搞了很久很不理解。 声明属性 data:{ q:{ tableName:null, count_date:null, p01:null, p02:null, }, showList: true, title: null, movaReport77: {}, colModel:{} } 赋值代码,其中vm为Vue的实例名: getTableMsg:function () { $.get(baseURL + "movareport77/report/field/"+vm.q.tableName, function(r){ vm.colModel = r.tableMsg; }); alert(JSON.stringify(vm.colModel)); } 第二段代码中弹出的内容是空值,但是如果我把弹出的方法体放到请求的回调函数里却可以弹出内容,如下代码元素vm.colModel的值为返回值。 getTableMsg:function () { $.get(baseURL + "movareport77/report/field/"+vm.q.tableName, function(r){ vm.colModel = r.tableMsg; alert(JSON.stringify(vm.colModel)); }); } Vue的赋值机制
...全文
507 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
weixin_38067950 2017-12-26
  • 打赏
  • 举报
回复
ajax是异步请求 当请求还没完成 后面就alert当然是获取不到值
weixin_38064374 2017-12-26
  • 打赏
  • 举报
回复
异步,这个和vue没关系
weixin_38061608 2017-12-26
  • 打赏
  • 举报
回复
这是js异步的回调机制,和vue一点关系没有
weixin_38050219 2017-12-26
  • 打赏
  • 举报
回复
那当然啦,ajax是不是异步的啊,你在外面肯定拿不到值啊

433

社区成员

发帖
与我相关
我的任务
社区描述
其他技术讨论专区
其他 技术论坛(原bbs)
社区管理员
  • 其他技术讨论专区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧