2

这可能吗?也就是说,我试过了,还是不行。但理论上应该是可能的,不是吗?我只是来回传递消息,隔离内存空间等。

import 'dart:io';
import 'dart:isolate';

main(){
  final sp = spawnUri('path/to/dart_html_app.dart');
}

抛出:

IsolateSpawnException: 'Do not know how to load 'dart:html'
4

1 回答 1

2

正如有人已经说过的那样,您不能dart:html在 VM 中导入(至少在这一点上)。您的解决方案是将应用程序拆分为两个库,您要生成的库不使用dart:html.

你到底想做什么?如果你认为你可以通过隔离让浏览器和虚拟机对话,那是行不通的。隔离使用 VM 中的线程池和浏览器上的 Web Worker(如果可用)。

如果您只想“从这个 URI 加载代码并像新隔离中的任何代码一样执行它”,那么这当然是可能的——为什么不呢?你只需要重构你的代码库,这样你就不会导入,dart:html除非你真的需要它。

于 2012-10-04T15:47:11.160 回答