2016-07-29 14 views
1

(私はこれをdart2jsで動作させるのに失敗しましたので、私はdart devコンパイラを試していますが、嬉しいことにdart2jの答えを取るでしょう!)。Dartのノードの関数をエクスポートするコードを生成するにはどうすればよいですか?

私がtest.dart持ちの場合:

void activate() { 
    print("activating..."); 
} 

dartdevc --modules node -o test.js test.dart出力を実行するには次のとおりです。

(function() { 
    'use strict'; 
    const dart_sdk = require('dart_sdk'); 
    const core = dart_sdk.core; 
    const dart = dart_sdk.dart; 
    const dartx = dart_sdk.dartx; 
    const __test = Object.create(null); 
    let VoidTovoid =() => (VoidTovoid = dart.constFn(dart.definiteFunctionType(dart.void, [])))(); 
    __test.activate = function() { 
    core.print("activating..."); 
    }; 
    dart.fn(__test.activate, VoidTovoid()); 
    // Exports: 
    exports.__test = __test; 
})(); 

これは私の関数は__test.activateとしてエクスポートされることを意味しかし、それだけでactivateするために私が必要なのです。

これをどのように制御できますか?私はこれのequivilentを目指していますJS:

exports.activate = function() { core.print("activating"); } 

答えて

0

このisn't currently possibleが、私はラッパーとその周りに働いた:

var extension = require('./dartvsjs/extension.js'); 

exports.activate = extension.__lib__extension.activate; 
exports.deactivate = extension.__lib__extension.deactivate; 
関連する問題