2016-08-19 1 views
8
Unable to resolve module fs from /...mypath 

반응이있는 기본 응용 프로그램으로 노드 모듈을 가져 오려고 할 때이 오류가 발생했습니다.React Native : 모듈 fs를 해결할 수 없습니다

이런 식으로 'FS'사용되는 모듈 :

var fs = require('fs'); 
var list = JSON.parse(fs.readFileSync(__dirname + '/list.json', 'utf8')); 
+0

간다? – Cherniv

+2

fs는 노드 코어 모듈 중 하나입니다. 나는 그것을 설치할 필요가 없다고 생각한다. 그래도 빠른 답변을 주셔서 감사합니다. –

답변

7

네이티브 응용 프로그램 (실제로 봉사하고 응용 프로그램 번들을 컴파일하는 패키저에 의해 사용된다)에 Node.js를 환경에서 실행되지 않습니다 반작용 .

앱이 iPhone 또는 Android에서 JS VM 내에서 실행 중이므로 파일 시스템에 액세스하는 유일한 방법은 react-native-fs 또는 브리지 연결을 사용하여 플랫폼 별 네이티브 API와 통신하는 다른 타사 모듈을 사용하는 것입니다.

+0

감사합니다. tls 모듈은 어떻습니까? 나는 그것에 대한 대안을 찾을 수없는 것 같습니다. 당신은 어떤 것을 알게됩니까? –

+0

모든 경우와 마찬가지로 Node.js 대신 iOS/Android를 생각해보십시오. 네이티브 API를 래핑하는 모듈이 필요합니다. 아무 것도 없으면 스스로 포장하기위한 기본 지식이 필요합니다. –

6

'rn-nodeify'을 사용하여 fs를 React Native에 포함 시켰습니다. 이 방법의 대부분의 노드 코어 모듈을 사용할 수 있습니다. NPM과를 설치

npm install rn-nodeify 

그런 package.json 파일에, 당신은 당신의 RN 프로젝트에 포함 할 모듈을 지정하는 "스크립트"에 다음 줄을 추가합니다. 예를 들어, 나는 FS, 암호화HTTPS을 사용하고, 줄은 '이 FS --save` 설치 NPM 했는가

"postinstall": "node_modules/.bin/rn-nodeify --install crypto,fs,https --hack" 
+0

나를 위해 "@ google-cloud/vision"을 설치하여 사용하려고 할 때 오류가 발생했습니다 : "0.11.0"'. 불행히도,이 해킹은 도움이되지 못했습니다. – gumkins

+0

@ gumkins, 문제의 해결책이나 경고 Google 클라우드 팀을 찾았습니까? 또한 반응이있는 클라이언트에서 비전 API를 사용하는 것과 동일한 문제가 있습니다. – arcom

관련 문제