Size: a a a

NodeUA - JavaScript and Node.js in Ukraine

2021 August 05

˸A

˸̧̨ ͅBlack Akula˸̧̨ ... in NodeUA - JavaScript and Node.js in Ukraine
да с вебпаком нет проблем с CSS - другие проблемы (с output, node modules) - но это решаемо... хотелось таки код иметь возможность редактировать прямо в интерфейсе

Бандл большой, да. Это вопрос к тем, кто фронт писал (на каждую фичу - тянули либу), яхз, не разбираюсь во фронте... Писал же выше, могу node_modules в Lambda Layer вытащить. Но вебпак ведь тянет всё в один бандл... (я в вебпаке полный ноль, не знаю, как его настроить получше)
источник

Y

Yevhen in NodeUA - JavaScript and Node.js in Ukraine
Webpack сделает столько бандлов, сколько Вам нужно. Как сделаете конфигурацию.
Для фронта обычно делают code splitting, чтобы не грузить на клиент огромный бандл
источник

˸A

˸̧̨ ͅBlack Akula˸̧̨ ... in NodeUA - JavaScript and Node.js in Ukraine
Там аутпут сейчас один - всё в один бандл собирается (один джс + один цсс)
источник

Y

Yevhen in NodeUA - JavaScript and Node.js in Ukraine
Такой себе подход. Особенно сейчас, когда Google меняет правила ранжирования в поиске (Core Web Vitals)
источник

˸A

˸̧̨ ͅBlack Akula˸̧̨ ... in NodeUA - JavaScript and Node.js in Ukraine
Если бы я был экспертом в вебпаке)))
Но не моя тема - хотел всё-таки настроить билд без него. Пусть даже бабел заюзать, чтоб их цсс импорты сделать - но знаний не хватает (((
источник

Y

Yevhen in NodeUA - JavaScript and Node.js in Ukraine
Я тоже не эксперт, но могу посмотреть что там у Вас в конфиге)
источник

˸A

˸̧̨ ͅBlack Akula˸̧̨ ... in NodeUA - JavaScript and Node.js in Ukraine
{
   name: 'server',
   target: 'node',
   mode: devMode ? 'development' : 'production',
   devtool: devMode ? 'cheap-module-inline-source-map' : 'source-map',
   entry: {
     server: [
       require.resolve('core-js/stable'),
       require.resolve('regenerator-runtime/runtime'),
       path.resolve(paths.srcServer, 'index.ts'),
     ],
   },
   externals: [
     nodeExternals({
       whitelist: /\.css$/,
     }),
   ],
   output: {
     path: paths.serverBuild,
     filename: 'server.js',
     publicPath,
     library: 'server',
     libraryTarget: 'var',
   },
   resolve: { ...resolvers },
   module: {
     rules: [
       {
         oneOf: [loaders.ts, loaders.svg, loaders.woff, loaders.cssServer, loaders.html],
       },
     ],
   },
   plugins: [...plugins.shared, ...plugins.server],
   stats: {
     colors: true,
   },
 }

в output library и libraryTarget - это сейчас мои эсперименты, чтоб из вебпак бандла экспорты были видны (походу, они ещё старую версию вебпака используют)
источник

Y

Yevhen in NodeUA - JavaScript and Node.js in Ukraine
А можете в gist скинуть то же самое?
В Telegram не очень удобно код смотреть
источник

˸A

˸̧̨ ͅBlack Akula˸̧̨ ... in NodeUA - JavaScript and Node.js in Ukraine
https://gist.github.com/blackakula/37c53183b68ba0fbcdcd56ce8ec6d2a9
(там слэши вместо тире в путях к файлам)
если нужны другие файлы, чтобы помочь мне - пишите, какие именно - добавлю
источник

Y

Yevhen in NodeUA - JavaScript and Node.js in Ukraine
Спасибо, я завтра посмотрю и отпишусь.
Возможно пригодится конфиг с фронта
источник

˸A

˸̧̨ ͅBlack Akula˸̧̨ ... in NodeUA - JavaScript and Node.js in Ukraine
сейчас решаю проблему с module.exports. На контейнере просто запускается сервер с app.listen, а вот лямбда требует эспорта функции из вебпака - не могу никак решить конфигурацией (вручную подредактировал скомпилированный вебпаком файл - работает, конечно) - для этого сейчас и экспериментирую с output
источник

Y

Yevhen in NodeUA - JavaScript and Node.js in Ukraine
источник

˸A

˸̧̨ ͅBlack Akula˸̧̨ ... in NodeUA - JavaScript and Node.js in Ukraine
libraryTarget: 'commonjs' - пробовал (и commonjs2).... но может, что-то неправильно делал... ещё буду пробовать
источник

Y

Yevhen in NodeUA - JavaScript and Node.js in Ukraine
источник

˸A

˸̧̨ ͅBlack Akula˸̧̨ ... in NodeUA - JavaScript and Node.js in Ukraine
о, спасибо. Завтра почитаю
источник

h

hilarion_von_juzefin... in NodeUA - JavaScript and Node.js in Ukraine
а от таке питання від новачка, який не дуже розбтрається:
чи можна замість вебасемблі використовувати ssr? на сервері ми ж можемо використовувати різні мови програмування
источник

˸A

˸̧̨ ͅBlack Akula˸̧̨ ... in NodeUA - JavaScript and Node.js in Ukraine
Wasm вроде и под фронт можно. Разве нет?
источник

h

hilarion_von_juzefin... in NodeUA - JavaScript and Node.js in Ukraine
ну да, але ж, якщо ми можемо фронт і на сервері рендерити, то нащо нам wasm?
источник

˸A

˸̧̨ ͅBlack Akula˸̧̨ ... in NodeUA - JavaScript and Node.js in Ukraine
Ну вот я упоролся))
Импорт цсс файлов - теперь либо вебпак... Или васм? 🤣
источник

Y

Yevhen in NodeUA - JavaScript and Node.js in Ukraine
Не зрозумів як Ви порівнювали wasm та SSR.
источник