Модули ES6 с ожиданием верхнего уровня на встроенной версии 8 - PullRequest
0 голосов
/ 21 июня 2020

Как сделать ожидание верхнего уровня в модулях ES6? У меня есть обычные модули ES6 для работы, но я не могу найти ничего о ожидании верхнего уровня в модулях ES6 с v8. вот мой код:

v8::Local<v8::Module> FactoryModule(v8::Isolate* isolate, v8::Local<v8::Context> context, const char* moduleName, const char* code) {
v8::TryCatch tc(context->GetIsolate());
v8::Local<v8::String> source_text = v8::String::NewFromUtf8(
                                        isolate, code)
                                        .ToLocalChecked();

v8::ScriptOrigin origin(v8::String::NewFromUtf8(isolate, moduleName).ToLocalChecked(),
                        v8::Integer::New(isolate, 0),
                        v8::Integer::New(isolate, 0),
                        v8::False(isolate),
                        v8::Local<v8::Integer>(),
                        v8::Local<v8::Value>(),
                        v8::False(isolate),
                        v8::False(isolate),
                        v8::True(isolate));
v8::Context::Scope context_scope(context);
v8::ScriptCompiler::Source source(source_text, origin);
v8::Local<v8::Module> module = v8::ScriptCompiler::CompileModule(isolate, &source).ToLocalChecked();
// I need to do something before this point as the line above already fails.

1 Ответ

1 голос
/ 21 июня 2020

Верхний уровень await в V8 находится в стадии активной разработки, см. Ошибку отслеживания: https://bugs.chromium.org/p/v8/issues/detail?id=9344

...