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

使用flutter_tts的TtsState时遇“js.JsObject未找到”错误求助

修复flutter_tts中js.JsObject找不到的错误

核心原因

直接导入flutter_tts_web.dart会跳过Flutter的平台自动适配逻辑,导致web端依赖的dart:js包未被正确引入或版本不兼容,进而出现JsObject找不到的错误。

解决方案

1. 替换导入语句(优先尝试)

不要直接导入web端专属包,改用主包导入:

// 替换之前的导入
import 'package:flutter_tts/flutter_tts.dart';

Flutter会自动根据当前运行平台(包括web)加载对应的实现类,无需手动指定web端包。

2. 锁定兼容的flutter_tts版本

打开pubspec.yaml,指定当前Flutter版本兼容的flutter_tts稳定版:

dependencies:
  flutter_tts: ^3.8.0  # 替换为最新稳定版

执行以下命令更新依赖并重新运行:

flutter pub get
flutter clean
flutter run -d chrome

3. 检查Flutter Web配置完整性

确保项目已正确配置web支持:

  • 若项目未初始化web平台,执行:
    flutter create --platforms web .
    
  • 确认web/index.html文件存在且配置正常。

4. 临时兼容方案(若以上无效)

如果仍无法解决,可在使用TtsState的文件顶部手动导入dart:js:

import 'dart:js' as js;
import 'package:flutter_tts/flutter_tts.dart';

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.05 05:57:42