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

React Native Amplify项目新增模型后DataStore报subscriptionError连接失败

问题引发原因
  • 你新增DbConversion模型后,仅修改了本地的schema.graphql文件,没有执行完整的Amplify后端部署流程,导致AppSync端的GraphQL接口没有自动生成@model指令依赖的系统字段(_version/_lastChangedAt/_deleted)以及对应的订阅、突变解析器配置。DataStore做增量同步时会默认请求这些字段,后端不存在就会抛出字段未定义的报错。
  • 本地DataStore的模型代码没有同步更新,新旧模型的本地定义和后端接口结构不匹配,也会触发该类报错。
  • 如果你此前手动修改过AppSync自动生成的Schema或解析器,新增模型时会导致自动生成逻辑冲突,系统字段无法正常更新。
解决方案

按照以下步骤依次操作即可修复:

  1. 重新生成本地DataStore模型代码,确保本地定义和你编写的Schema一致:
amplify codegen models
  1. 部署更新后的Schema到AWS云端,部署过程中提示是否开启冲突解决时选择是(DataStore依赖冲突解决能力生成对应的系统字段):
amplify push
  1. 清空客户端本地的旧DataStore缓存,避免旧结构残留导致报错:React Native端可直接卸载重装App,也可在App初始化逻辑中调用一次await DataStore.clear()清理缓存。
  2. 确认DataStore配置的执行顺序:必须先调用Amplify.configure(awsconfig)完成全局配置,再执行DataStore.configure()配置同步规则,否则配置不会生效。

附加问题修复

你提到的安卓端长定时器警告是React Native的已知兼容问题,可在项目入口文件添加以下代码屏蔽无关警告:

import { LogBox } from 'react-native';
LogBox.ignoreLogs(['Setting a timer']);

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 12:54:01