У меня есть приложение, скомпилированное в dart2js (версия Dart SDK 0.6.13.0_r25630), и я хочу загружать его с помощью RequireJS каждый раз, когда мне нужно.
Прежде всего, спасибо Богу за функцию-обертку в скомпилированном javascript, но в моем случае этого недостаточно :(
Я использую requirejs для загрузки приложения dart2js.
require(["application.dart"], function () {});
но я хотел бы обрабатывать, когда запускать приложение. например, по событию клика.
require(["jQuery","application.dart"], function (jQuery,$) {
jQuery(element).click(function(){
$.startRootIsolate($.main$closure);
})
});
Я взломал скомпилированный Javascript, но хотел бы знать, возможно ли это нативным способом.
в application.dart.js я завернул функцию в модуль AMD
(function (factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as anonymous module.
define([],function(){
return factory();
} );
} else {
// Browser globals.
factory();
}
})(function($) {...})
затем я возвращаю $ Object
return $;
и, наконец, я прокомментировал эту строку кода, где я нашел
$.startRootIsolate($.main$closure);
Спасибо всем
Марко