Vlad
Ale
cjs это не часть js'a, это env
A
Навскидку не нравится:
1. втащили модули на уровень синтаксиса языка. Профитов это похоже, никаких не дало
2. не то, чтобы я фанат динамической или условной загрузки, но иногда надо. Этого в ES6 modules нету. Дада, планируется API. Но очень уж оно до сих пор планируется.
3. поддержка из коробки... ну она мягко говоря не очень
Вопрос такой. Если cjs работает, причем почти везде. То зачем вело-импорт?
Ale
прям почти везде это нода и два бандлера?
A
Vlad
Vlad
Ale
http://exploringjs.com/es6/ch_modules.html
A
Слабые аргументы
ну, я почему и спрашиваю. в защиту import чаще всего слышно "ну это же стандарт, значит надо использовать"
A
Ale
cjs синхронные, в браузеры их вообще никак не втащить
A
А import асинхронные?)
Ale
да
Ale
ну точнее любые
A
Ну вообще говоря нет
A
Ну нет же)
A
Как они асинхронными-то стали?
Ale
в смысле?
Ale
всегда ими были
Ale
и это одна из проблем имплемента их в ноде
A
До тех пор пока все зависимости твоего модуля не подтянутся - он не начнёт исполнение
Таймураз
Насколько я помню, по спеке все импорты запрашиваются асинхронно, но остальной код исполняется, когда все импорты отработают
Ale
A
Т.е. реально это не асинхронные модули, а модули, которые параллельно загружаются
Ale
что значит реально не асинхронные?
A
Ну вот amd модули - асинхронные
A
Ты можешь импортировать два модуля из трех, начать что-то делать, и когда загрузится третий - сделать что-то еще
Таймураз
А Алекс, по всей видимости, хочет асинхронно запрашивать модели и при этом дальше исполнять какую-то логику
A
Vlad
Dynamic import proposal — stage-3
Ale
простая декомпозиция
Таймураз
A
Не, я не хочу ) Но речь веду именно о такой асинхронности
Vlad
Рукой подать до спеки
Ale
зависимости резолвятся асинхронно
Vlad
Но пропозал спорный на самом деле
Vlad
Хоть и полезный
Таймураз
Vlad
Static analysis is broken
Vlad
Dead code elimination as well
Ale
для анализатора import("...") также сложно как import * as A from "..."
A
DCE в динамическом языке же только в рантайме возможен, не?
Ale
Vlad
Sergey
всем привет
кто нибудь знает чем можно построить такой граф в консоли?
как в npm ls
Sergey
Таймураз
Alex
https://www.npmjs.com/package/treeify
Alex
1 раз юзал
Sergey
спасибо
Anonymous
Ребят, как ESlint научить не ругаться на async function fn(){ }? Точнее его не синтаксис волнует, а "ESLint: Parsing error: Unexpected token function". С arrow-functions async нормально работает. Кто как решал?
Alex
Anonymous
Есть
Sergey
Anonymous
Видишь, он не синтаксическую ошибку кидает, у него парсер такой конструкции не понимает.
Sergey
попробуй парсер babel-eslint
Anonymous
Для JSDoc, насколько я понимаю, вообще приходиться выкидывать из кода async/await перед обработкой с помощью плагина.
Anonymous
Sergey
Paul
Обнови eslint
Anonymous
Тут babel нету, только native
Paul
Убедись что
'parserOptions': {
'ecmaVersion': 2017,
Vlad
Vlad
Roman
А что лучше для бэкенда: nodejs или go/rust?
Vlad
Roman
Таймураз
Vlad
Почему?
Потомучто прямые руки важнее
Vlad
Инструмент второстепенен
Vlad
Если только у тебя нет конкретных requirements
Roman
А ВОТ ТЕПЕРЬ ПАБЛИК
C