Синтаксис MeteorJS ES6 дает сбой только при импорте пакета NPM.Сборка того же кода внутри репо работает нормально - PullRequest
0 голосов
/ 03 июля 2019

Я собрал небольшой пакет npm из ~ 200 строк, который запускает проверку работоспособности.Он использует синтаксис ES6.Когда я публикую и затем импортирую в проект метеора, появляется ошибка let checks = [];, говорящая SyntaxError: Block-scoped declarations (let, const, function, class) not yet supported outside strict mode.

В метеорном проекте используются переменные ES6, и * повсеместно используются let.

Я взял этот пакет npm и встроил его в файл в моем метеорологическом проекте, поэтому не импортировал.Это работает нормально, и моя проверка здоровья работает.Однако по какой-то причине, когда я импортирую, он ломается.

npm код пакета: let checks = [];

ошибка:

let checks = [];
^^^
SyntaxError: Block-scoped declarations (let, const, function, class) not yet supported outside strict mode
    at Object.exports.runInThisContext (vm.js:53:16)
    at /Users/.../configuration-service/.meteor/local/build/programs/server/boot.js:287:30
    at Array.forEach (native)
    at Function._.each._.forEach (/Users/.../.meteor/packages/meteor-tool/.1.4.1_2.1xe2w4b.28mr++os.osx.x86_64+web.browser+web.cordova/mt-os.osx.x86_64/dev_bundle/server-lib/node_modules/underscore/underscore.js:79:11)
    at /Users/.../configuration-service/.meteor/local/build/programs/server/boot.js:128:5

Я ожидаю, что синтаксис ES6 не будетпроблема, учитывая, что он уже используется в проекте, который импортирует этот небольшой пакет.Я не уверен, почему ES6 не работает только при использовании в качестве модуля узла импорта.Если я копирую / вставляю тот же самый точный код в файл в моем проекте, он не будет жаловаться.

...