Могу ли я загрузить JS ES6 + модули в современный Swift JavaScriptCore? - PullRequest
0 голосов
/ 13 февраля 2020

Используя JavaScriptCore, я хотел бы интегрировать часть современной Javascript кодовой базы в программу Swift 5.x для ios / ipados 13. Код JS широко использует функции ES6 +. Например: async/await, stati c import (import * as something from “something.js”) и динамические c import (`awaitloadedModule = import (“ something.js ”));

Основано на этом сообщении от 2018 года , кажется, что операторы импорта не были реализованы должным образом на этом этапе: Как импортировать модули в JavaScriptCore Swift?

(я не думаю, что это целесообразно воскресить этот пост, так как на данный момент многое изменилось.)

С тех пор, интегрировал ли JavaScriptCore эти функции? Насколько я понимаю, если они работают в браузере Safari, то они также должны работать в автономном JavaScriptCore (или это неправильно предположить)? Я не думаю, что было бы целесообразно использовать babel или веб-пакет для преобразования моего кода.

Если это возможно, как я могу загрузить этот вид JavaScript из Swift?

РЕДАКТИРОВАТЬ:

Я все еще получаю JS Exception: SyntaxError: Unexpected token '*'. import call expects exactly one argument.

, когда я пытаюсь сделать следующее:

import * as mod from "./mod.js";

1 Ответ

0 голосов
/ 18 февраля 2020

Ответ «нет», но я могу использовать Babel для переноса файлов с помощью stati c импорта / экспорта в код, содержащий require s, а также реализовать свою собственную версию require в Swift для имитации того, что я хочу.

...