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

React Native 0.79.3无桥接架构下实现原生Counter模块时RCTTurboModule找不到的问题求助

React Native 0.79.3无桥接架构下实现原生Counter模块时RCTTurboModule找不到的问题求助

各位React Native大佬好!我最近在React Native 0.79.3的无桥接架构下尝试实现一个原生Counter模块,折腾了好几天,一直卡在RCTTurboModule not found的错误上,实在没辙了来求助大家!

问题详情

我想做一个支持增减计数、获取初始值的原生iOS模块,按照官方文档的思路写了代码,但编译运行时始终提示找不到RCTTurboModule,无法正常构建。

我的实现代码

iOS Swift模块(Counter.swift)

import Foundation
import React

@objc(Counter)
class Counter: NSObject, RCTTurboModule {
    private var count = 0
    
    @objc var bridge: RCTBridge!
    
    @objc func increment(_ resolve: RCTPromiseResolveBlock, rejecter reject: RCTPromiseRejectBlock) {
        count += 1
        resolve(count)
    }
    
    @objc func decrement(_ resolve: RCTPromiseResolveBlock, rejecter reject: RCTPromiseRejectBlock) {
        if count == 0 {
            let error = NSError(domain: "CounterErrorDomain", code: 200, userInfo: [NSLocalizedDescriptionKey: "Cannot decrement below zero"])
            reject("ERROR_COUNT", "count cannot be negative", error)
        } else {
            count -= 1
            resolve(count)
        }
    }
    
    @objc func getInitialCount() -> Int {
        return 0
    }
}

TypeScript接口定义(NativeCounter.ts)

import { TurboModule, TurboModuleRegistry } from 'react-native';

export interface Spec extends TurboModule {
  increment(): Promise<number>;
  decrement(): Promise<number>;
  getInitialCount(): number;
}

export default TurboModuleRegistry.getEnforcing<Spec>('Counter');

桥接头文件(counterApp-Bridging-Header.h)

#import <React/RCTBridgeModule.h>
#import <React/RCTTurboModule.h>

遇到的错误

RCTTurboModule not found

已尝试的排查操作

我已经试过以下方法,但都没解决问题:

  • 彻底清理缓存并重新安装依赖:
    cd ios
    rm -rf ~/Library/Caches/CocoaPods
    rm -rf Pods
    rm -rf ~/Library/Developer/Xcode/DerivedData
    pod deintegrate
    pod setup
    pod install
    
  • 在Podfile中手动添加TurboModule依赖:
    pod 'React-RCTTurboModule', :path => '../node_modules/react-native/Libraries/TurboModule'
    
  • 确认版本兼容性:
    • React Native: 0.79.3
    • Xcode: 16.2
    • CocoaPods: 1.14.3

我的疑问

  1. 在RN 0.79的无桥接模式下,RCTTurboModule还是正确的实现协议吗?会不会已经有新的替代接口了?
  2. 我的模块代码里有没有遗漏的必要配置或者实现细节?
  3. 是否需要额外引入其他头文件才能让Xcode识别RCTTurboModule?

内容来源于stack exchange

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.08 09:43:00