2016-09-21 2 views
0

코드 도구 응용 프로그램에서 cordova-promise-fs을 사용할 수 없습니다.CordovaPromiseFS가 정의되지 않았습니다.

내가 갖고있는 것 : browser.h가 생성 한 하나의 js 파일을 포함하는 index.html. 이 파일이 cordovapromisefs.js, promiscuous.js 내 자신의 코드의 내용이 포함 JS :이 작업을 완수해야한다고 생각

require('../node_modules/cordova-promise-fs/dist/CordovaPromiseFS.js'); 

var fs = CordovaPromiseFS({ 
      persistent: true, // or false 
      storageSize: 20 * 1024 * 1024, // storage size in bytes, default 20MB 
      concurrency: 3, // how many concurrent uploads/downloads? 
      Promise: require('../node_modules/promiscuous/promiscuous.js') // Your favorite Promise/A+ library! 
     }); 

(function() { 
    "use strict"; 


    document.addEventListener('deviceready', onDeviceReady.bind(this), false); 

    function onDeviceReady() { 
     console.log(fs); 
    }; 
})(); 

을, 그러나 이것은 "catch되지 않은 ReferenceError가 날 리드 : CordovaPromiseFS가 정의되어 있지 않습니다 "

올바른 방향으로 향하고 싶습니다.

답변

0

이 같은 모듈 자체를 필요로 :

var CordovaPromiseFS = require('cordova-promise-fs'); 

이 번들의 cordova-promise-fs/index.js 파일을 포함합니다 그 어떤 - 이미 번들 된 파일과 달리 팩토리 기능을 내보내는 CommonJS 모듈이 있습니다.

+0

감사합니다. 분명히 나는 ​​browserify가 벌써 무엇을하고 있었는지 그리고 무엇이 필요했는지를 완전히 이해하지 못했다. – Wheelie

0

시도하고 require에서 반환 값을 할당합니다

var CordovaPromiseFS = require('../node_modules/cordova-promise-fs/dist/CordovaPromiseFS.js'); 

당신은 또한 웹팩으로, 브라우저 라이브러리로 CordovaPromiseFS 자신을 구축 할 수 있습니다. the repo's readme는 소스를 복제하고 사용할 수 prepublish 명령을 실행할 것을 제안 :

npm install webpack -g 
npm run-script prepublish 

이 명령은 기본적으로 CordovaPromiseFS의하는 index.js 파일과 포장 DIST 파일을 팩 및 변수 (see the source)에 제공합니다. 당신은 당신의 번들을 구축 할 Browserify를 사용하여, 그래서 대신에 이미 번들 cordova-promise-fs/dist/CordovaPromiseFS.js 파일을 필요로하고

관련 문제