vuejs v-for下拉框有时有数据有时没有
描述:用vuejs的v-for加载下拉框时,有时下拉框能加载出来数据,但有时加载不出来,尤其在vuejs的renderList方法加断点时一般能加载出来。(在vue对象外ajax同步请求并赋值)
方案:最后通过设置ajax请求async为false、在mounted方法中调用vue定义函数解决。
解决代码:
data: { list: [], }, mounted: function () { this.fnGetListArr(); }, methods: { fnGetListArr() { var _this = this; $.ajax({ url: "xxx", //dataType: "json", //返回格式为json async: false, data: { "xxx": "xxx" }, type: "POST", success: function (data) { _this._data.list = JSON.parse(data); } }); }, }
另外:
有时有数据有时没:刚开始在vuejs外定义和调用赋值的方法,且ajax请求默认同步的,可能是因为vuejs执行比较快,v-for执行完时数据还没请求完,导致下拉框没数据。
在vue对象外设置ajax异步并对vue数据赋值:vm._data.list = listArr;,会提示:Cannot read property '_data' of undefined
vuejs有$axios代替ajax请求,但需要引用axios.js,这次没有尝试
参考:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 提示词工程——AI应用必不可少的技术
· 字符编码:从基础到乱码解决
· 地球OL攻略 —— 某应届生求职总结