VSCode clasp

18 views
Skip to first unread message

Михаил Е. Попов

unread,
Feb 7, 2022, 9:07:01 AM2/7/22
to contributor.pw
День добрый!

Когда редактирую код в онлайн редакторе Google Apps Script, то методы из разных файлов подхватываются.
Но если эти же файлы отлаживать в VSCode, то на строке использования метода из "соседнего" файла: 
Uncaught ReferenceError: имяМетода is not defined. Читал про export.module Улучшил package.json Приписал нужным методам export В нужном файле вписал import. Ок! Отладка пошла. Но теперь при clasp push VScode пишет:
SyntaxError: Cannot use import statement outside a module line:1 (в этой строке import)

Как бы настроить код, чтобы он отлаживался и в VSCode и в Google Apps Script редакторе?

С уважением.

Alexander Ivanov ✔

unread,
Feb 8, 2022, 12:52:51 AM2/8/22
to contributor.pw
Не знаю, можно ли указать для VS Code, что пространство имен проекта общее.

Я использую следующий хак. Необходимо открыть файл из которого IntelliSense может взять данные для дополнения кода.

1644299365766.png

Обычно для проектов GAS этого достаточно.

Михаил Е. Попов

unread,
Feb 8, 2022, 2:00:18 AM2/8/22
to contributor.pw
Спасибо.
Да? VSCode видит сущности из "соседнего"  файла, IntelliSense работает,  Go to definition переходит.
Но методы не вызываются :-(

Александр, у Вас методы из "соседнего" файла вызываются?

вторник, 8 февраля 2022 г. в 08:52:51 UTC+3, Alexander Ivanov ✔:

Alexander Ivanov ✔

unread,
Feb 8, 2022, 2:05:07 AM2/8/22
to contributor.pw
А, понял.

Так отладку произвести нельзя. Нужно с помощью сборщика, например, gulp, parcel собрать необфусцированный  модуль с глобальными переменными. По-другому красиво не получится, я думаю.

Я бы предпочел gulp https://www.npmjs.com/package/gulp-concat

Соответственно можно натравить watcher на изменение файлов в проекте и всегда получать актуальный файл для теста. Думаю, что можно добавить и sources для отладки.

Михаил Е. Попов

unread,
Feb 8, 2022, 5:54:44 AM2/8/22
to contributor.pw
Спасибо.

Как-то неестесственно ...

gulp соберёт файлы в один файл, стану отлаживать, захочу изменить код - нужно бежать в другой файл, искать строку?


вторник, 8 февраля 2022 г. в 10:05:07 UTC+3, Alexander Ivanov ✔:

Alexander Ivanov ✔

unread,
Feb 8, 2022, 6:08:01 AM2/8/22
to contributor.pw
js вообще мало естественен.

Для отладки строят специальные source map https://habr.com/ru/post/509250/

Например, для gulp https://www.npmjs.com/package/gulp-sourcemaps

При отладке любой исполнитель js сможет распознать source map. Другое дело, что многих методов GAS не существует в локальных средах.

Михаил Е. Попов

unread,
Feb 8, 2022, 6:44:00 AM2/8/22
to contributor.pw
Спасибо.
Но source map для взрослых.
Я перекинул нужный код из одного файла в другой - не эстетично, но мне проще потом его удалить, чем городить вавилоны ...

вторник, 8 февраля 2022 г. в 14:08:01 UTC+3, Alexander Ivanov ✔:

contributor.pw

unread,
Feb 8, 2022, 8:28:22 AM2/8/22
to contributor.pw
👍 ну, оно как бы так и есть в сущности
Reply all
Reply to author
Forward
0 new messages