Неудача сегодня на работе, задаваясь вопросом, может ли кто-нибудь предложить некоторые рекомендации. Я пытаюсь выполнить примерно следующее, описанное ниже.Пересылка es6 в es5
Файлы им работать с:
- config.js: конфигурационный файл, используя ES6 синтаксис (в частности, с использованием импортного ключевого слова).
script.js: сценарий узла, написанный с использованием версии узла, который не поддерживает использование синтаксиса es6 (особенно с использованием ключевого слова import). script.js стремится прочитать содержимое config.js
//config.js import _ from 'npm:lodash' import foo from '../otherRandomFile.js' var configObject = { randomConfigOne: true, randomConfigTwo: false } export default configObject; //script.js var config = require('../app/config.js) //cannot console log as below because script barfs //due to import being a reserved wrk console.log(config.randomConfigOne);
Вопрос: Что я должен делать в script.js, так что я могу получить доступ к объекту, экспортируемый config.js файл. Сейчас сценарий ненадежен о том, что я пытаюсь использовать ES6 синтаксис в файле я доступ к
положить .DEFAULT после вашего требуют в script.js – JordanHendrix
Ну, с вашего заголовка вопроса, похоже, вы уже нашли решение: используйте transpiler. Вы попробовали? – Bergi
@bergi Да, я попытался использовать транспилер (babel), однако дьявол находится в деталях. Как вы можете видеть, config.js импортирует другие файлы (otherRandomFile.js), который, в свою очередь, также использует синтаксис es6, поэтому мне пришлось бы как-то рекурсивно перекрыть все импортированные файлы. Практически в этот момент единственное решение, которое я вижу, - это перепечатка всей директории. Надеюсь, что есть лучший способ. – dkorenblyum