2014-11-15 5 views

답변

2

기본적으로 Sugar는 지원 라이브러리입니다. 함수를 내보내는 것이 아니라 JavaScript 런타임의 다양한 유형의 객체에 함수를 추가합니다.

단계 : 스크립트 디렉토리 또는 다른 디렉토리에

  1. 장소 sugar.min.js,
  2. require("sugar.min");
  3. 가 직접 또는 다른 디렉토리 require("./relativePath/sugar.min");에서 파일을 실행합니다.

    casper.test.begin("sugar1", function suite(test){ 
        test.assertTrue(![1,2,3].average, "average function does not exist"); 
        require("sugar.min"); 
        test.assertFalse(![1,2,3].average, "average function does exist"); 
        test.assertTrue([1,2,3].average() === 2, "average function works"); 
        test.done(); 
    }); 
    

    require로드 모듈에 보통이지만, 설탕 아무것도 내 보내지 않기 때문에 그냥 실행됩니다

다음 전체 스크립트가 작동하는지 보여줍니다. 다른 방법으로는 fs.readeval으로 파일을 읽는 것입니다.

+0

완벽한을 나는 다음과 같은 사용 (PhantomJS 및 SlimerJS 모두) 작업있어! 그리고 내가 깨달은 것보다 쉬웠다. (필자는'require '를 상대 경로와 함께 사용했고, 처음에는 작동했습니다.) –

+1

'require'는 꽤 중요한 말입니다. JSON 파일이 필요한 경우 직접 파싱하고 내보낼 수 있습니다. –

+0

Artjom, 나는'require'를 사용하여'fs.read()'와'eval'로 전환했습니다; 아래 내 대답을 참조하십시오. –

1

Artjom의 답변에 대한 추가 정보. SlimerJS를 엔진으로 사용할 때 require을 사용할 때 멈 춥니 다. 드롭 인 교체로

var fs = require('fs'); 
var sugarJS = fs.read("/path/to/sugar.min.js"); 
eval(sugarJS); 

을 위해 :

require("/path/to/sugar.min");