С плагином Less я получил хорошую Less -> Css-компиляцию всякий раз, когда я сохраняю файл. Как получить такое же поведение с Babel, чтобы код ES6 был перекочеван на ES5? БлагодаряSublimeText: transpile ES6 to ES5 on save
ответ
Edited после @ Lukas-kabrt предложение:
less2css
Sublime плагин, использует on_post_save() событие Блистательной API, чтобы слушать для сохранения файла, а затем вызвать код, который будет компилировать .less файл автоматически. Что-то подобное может быть выполнено для компиляции Babel ES6-to-ES5, используя это событие в плагине и привязывая его к внешней команде, которая автоматически скомпилирует текущий файл с помощью Babel. Это простой плагин для ST2, написанный на Python, который решает эту задачу:
import sublime, sublime_plugin,os
from os.path import dirname, realpath
class BuildonSave(sublime_plugin.EventListener):
def on_post_save(self, view):
es6File = view.file_name()
filename, file_extension = os.path.splitext(es6File)
if file_extension == ".es6":
view.window().run_command('exec',{'cmd': ["/usr/local/bin/babel", es6File, "-o", filename+".js", "--source-maps", "inline"] })
Примечание: Этот плагин ищет .es6 суффиксальными файлы и компилирует их в файл соответствующие .js, например, myfile.es6, будет передан в файл myfile.js ES5.
cmd
расположение /usr/local/bin/babel
можно получить в вашей системе, выполнив команду which babel
на терминале, если вы на Mac OS X.
Исходный код можно найти здесь: https://gist.github.com/kostasx/1d55c62edcee88375fc8
Вы может проверить документацию API Sublime Plugin, если вы хотите пообщаться с кодом выше немного больше.
Любая идея, что последняя строка превращается в Windows? –
@StevenScaffidi Вы можете попробовать следующие шаги: во-первых, установить CLI Бабель: 'C: /> NPM установить -g Бабель-cli' Затем найдите путь к исполняемому файлу:' C: /> где babel' Заменить например, при моей установке: 'C: \ Users \ USER \ AppData \ Роуминг \ npm \ babel.cmd' И не забудьте избежать косых черт! 'view.window(). Run_command ('exec', {'cmd': ['C: \\ Users \\ USER \\ AppData \\ Роуминг \\ npm \\ babel.cmd', es6File," - o ", filename +". js "," --source-maps "," inline "]})' – KostasX
Я пытался \\ babel, и он не работал. Изменил его на \\ babel.cmd, и он отлично работает. Большое спасибо. –
- 1. Неожиданное Transpile ES6> ES5
- 2. AngularJS on Websphere, es6 to es5 transpiler
- 3. React-native (ES5) to (ES6)
- 4. ES6 Transpile in package.json
- 5. Пересылка es6 в es5
- 6. Transpile React Нативный модуль для ES5 перед публикацией в npm?
- 7. webpack/babel transpile to system.register
- 8. Transpiling ES6 к ES5 онлайн с Вавилонской
- 9. ES5 vs ES6 Promises
- 10. Не удалось динамически transpile ES модуль System.config ({transpile: 'transpile-модуль'})
- 11. es6 код сломанный в es5
- 12. ES5 Нокаут для ES6 Нокаут
- 13. Почему мои обязательные библиотеки не конвертируются из ES6 в ES5?
- 14. Использование классов ES6 с кодом ES5
- 15. ES5 vs ES6 Javascript для массивов
- 16. Webpack не конвертирует ES6 в ES5
- 17. Рекурсивных конвертировать ES6 в ES5, используя столпотворение с ворчанием
- 18. Javascript: Как создать ES5 lib с ES6
- 19. Тип машинописного/eS5-ES6 не набирается
- 20. Transpiling Angular2 ES6 to ES5 с помощью Babel (и модуль «transform-es2015-modules-systemjs») и SystemJS
- 21. Что эквивалентно методам (классу) ES6 в es5?
- 22. Преобразование реакции с es5 на es6
- 23. Освобождение источников es6 и es5 с npm
- 24. Реагировать на родной запрос es5 vs es6
- 25. Сколько классов ES6 отличается от ES5?
- 26. Используйте gulp с угловым2 - ES5 или ES6
- 27. Play framework ES6-> ES5 transpiler?
- 28. Использование методов массива ES5 с генераторами ES6
- 29. Как импортировать «старые» ES5 коды в ES6
- 30. Требуется ли машинопись для es6 и es5
Вы явно ищете возвышенный плагин или просто ищете способ перекомпиляции изменений? Инструмент CLI для Babel можно передать '-w', чтобы просматривать файлы для изменений. Как вы сейчас компилируете без возвышенного? – loganfsmyth
Задание заданий (или любые шаги сборки, которые вы можете себе представить) также можно выполнить с помощью [grunt.js/gulp.js] (https://babeljs.io/docs/using-babel/). После настройки вы можете запустить задачу просмотра, выполняющую рутинные задания для вас, или вы можете вручную запустить шаги сборки через CLI. – jaydoubleyou