You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Svelte each块无法渲染Axios+SvelteKit获取的数组数据求助

排查Svelte中#each无法渲染数组的步骤
  • 确认变量响应式:存储数据的变量必须用let声明(不能用const),Svelte通过赋值触发响应式更新。如果是对数组做push/splice这类操作,要手动触发更新,比如执行items = items。
  • 检查API数据结构:确保你存入数组的是可迭代的数组本身,而非嵌套在对象里的数组。比如API返回{ data: [/* 数据列表 */] },那你需要把response.data赋值给数组,而不是整个response对象。
  • 验证#each语法:检查模板循环语法是否正确,示例:
    {#each yourDataArray as item}
      <div>{item.title}</div>
    {/each}
    
    注意不要漏写闭合标签{/each},也不要拼错each关键字。
  • 确认数据是否存在:在组件里添加{JSON.stringify(yourDataArray)}直接显示在页面上,或者在获取数据后执行console.log(yourDataArray),验证数组是否真的有内容。
  • 处理异步加载:如果是在onMount里调用API,确保请求完成后再给数组赋值,同时处理加载状态:
    {#if yourDataArray.length === 0}
      <p>加载中...</p>
    {:else}
      {#each yourDataArray as item}
        <div>{item.title}</div>
      {/each}
    {/if}
    

内容的提问来源于stack exchange,提问作者Sami Rherbi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.20 17:15:08