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

Flutterflow中plaid_flutter:^3.1.4初始化PlaidLink报错求助

排查Flutterflow中Plaid Link初始化报错「Cannot read properties of undefined (reading 'create')」

问题背景

已成功获取有效Plaid Link Token,但在Flutterflow测试模式(桌面/移动浏览器)调用PlaidLink.open时触发上述错误,已按要求在web目录index.html添加官方JS链接但问题依旧。

自定义动作代码

import 'package:plaid_flutter/plaid_flutter.dart';

Future initPlaidLink() async {
  print('Initializing Plaid Link');

  LinkConfiguration configuration = LinkTokenConfiguration(
    token: "link-sandbox-xxxxxxxxxxxxxxxxxxxxx",
  );

  PlaidLink.open(configuration: configuration);
}

报错信息

Uncaught (in promise) TypeError: Cannot read properties of undefined (reading 'create')
    at plaid_flutter_web.PlaidFlutterPlugin.new.open (plaid_flutter_web.dart:97:20)
    at open.next (<anonymous>)
    at runBody (dart_sdk.js:39921:34)
    at Object._async [as async] (dart_sdk.js:39957:7)
    at plaid_flutter_web.PlaidFlutterPlugin.new.open (plaid_flutter_web.dart:35:20)
    at open (plaid_link.dart:36:21)
    at open.next (<anonymous>)
    at runBody (dart_sdk.js:39921:34)
    at Object._async [as async] (dart_sdk.js:39957:7)
    at PlaidLink.open (plaid_link.dart:35:27)
    at initPlaidLink (init_plaid_link.dart:32:13)
    at initPlaidLink.next (<anonymous>)
    at runBody (dart_sdk.js:39921:34)
    at Object._async [as async] (dart_sdk.js:39957:7)
    at Object.initPlaidLink (init_plaid_link.dart:13:21)
    at page7_add_account_widget.dart:33:21
    at Generator.next (<anonymous>)
    at runBody (dart_sdk.js:39921:34)
    at Object._async [as async] (dart_sdk.js:39957:7)
    at page7_add_account_widget.dart:32:53
    at [_invokeFrameCallback] (binding.dart:1297:15)
    at binding$5.WidgetsFlutterBinding.new.handleDrawFrame (binding.dart:1236:9)
    at [_handleDrawFrame] (binding.dart:1085:5)
    at Object.invoke (dart_sdk.js:193938:7)
    at _engine.EnginePlatformDispatcher.new.invokeOnDrawFrame (dart_sdk.js:168021:15)
    at dart_sdk.js:193679:57
    at Object._checkAndCall (dart_sdk.js:5625:16)
    at Object.dcall (dart_sdk.js:5630:17)
    at ret (dart_sdk.js:61495:21)

排查方向

  • 确认Plaid JS脚本加载时机与顺序
    检查index.html中Plaid脚本是否放在<body>末尾(而非<head>),确保Flutter Web初始化前脚本已加载完成,示例脚本:

    <script src="https://cdn.plaid.com/link/v2/stable/link-initialize.js"></script>
    

    不要给脚本加async/defer属性,保证同步加载完成后再执行Flutter代码。

  • 验证Flutterflow的Web构建配置
    在Flutterflow的「Settings > Web App」中,确认自定义HTML代码已正确注入到index.html,未被平台过滤;右键测试页面查看源码,确认Plaid脚本存在,且浏览器控制台「Network」标签显示脚本HTTP状态码为200(加载成功)。

  • 检查plaid_flutter版本兼容性
    确认plaid_flutter版本与Plaid Link JS版本匹配,比如最新版插件可能需要v3版本脚本:

    <script src="https://cdn.plaid.com/link/v3/stable/link-initialize.js"></script>
    

    可尝试降级/升级插件版本(参考pub.dev文档),排除版本不兼容问题。

  • 测试非Flutterflow环境的Web运行情况
    新建纯Flutter Web项目,复制相同的Plaid初始化代码并添加正确脚本,验证是否正常运行。如果纯Flutter环境正常,说明问题出在Flutterflow的特定配置上。

  • 清除Flutterflow测试模式缓存
    强制刷新浏览器(Ctrl+Shift+R / Cmd+Shift+R),清除测试模式缓存,避免旧的未注入脚本的页面缓存导致问题;也可尝试使用「发布预览」模式测试。

  • 检查Link Token的环境匹配
    确认使用的Link Token是sandbox环境的,与Plaid脚本环境一致;重新生成Link Token,确保token未过期或格式错误。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.03 01:55:22