2016-07-29 23 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; 
相關問題