我想获取当前javascript脚本的目录名,例如node.js中的__dirname
我在react native中未在文档中找到该方法,我想知道如何实现此目的?
或者如何找到静态文件(例如.js)?例如,使用NSDocumentDirectory在iOS中本地定位文件。

最佳答案

一种方法是创建一个 native 模块。这是一个非常简单的示例,只是为您提供了一个字符串,您可以根据自己的确切要求对其进行自定义。在Xcode中,创建一个新类:

//  DirName.h

#import "RCTBridgeModule.h"

@interface DirName : NSObject<RCTBridgeModule>

@end

//  DirName.m
#import "DirName.h"

@implementation DirName
- (void) get:(RCTResponseSenderBlock)callback {
    RCT_EXPORT();

    // Change this depending on what you want to retrieve:
    NSString* dirName = @"something";

    callback(@[dirName]);
}

@end

然后调用:
var dirName = require('NativeModules').DirName;

dirName.get(dirName => {
    console.log(dirName);
});

但是我会对此加以警告。考虑一下您在做什么-您是否肯定要阅读iOS设备的文件系统,还是要使用其他可用的获取文档的方法之一?

关于node.js - 如何使用React Native获得像Node.js这样的 `__dirname`,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29297295/

10-11 14:16