Size: a a a

Webpack — русскоговорящее сообщество

2019 April 17

UZ

Urmat Zhenaliev🇰🇬 in Webpack — русскоговорящее сообщество
Hedint
Чанки сами подгружаются
Хмм.. у меня вот почему-то не грузит. Чанки генерит, но браузер их не подгружает. Я могу сюда скинуть конфиг, может подскажете?
источник

UZ

Urmat Zhenaliev🇰🇬 in Webpack — русскоговорящее сообщество
const webpack = require('webpack');
const path = require('path');
const ExtractTextPlugin = require('extract-text-webpack-plugin');

module.exports = {
 entry: {
   main: path.resolve('public/KTJ/Main/js/script.js'),
   page_landing: path.resolve('public/KTJ/Page/Landing/js/script.js'),
   page_account: path.resolve('public/KTJ/Page/Account/js/script.js'),
   post_show: path.resolve('public/KTJ/Post/Show/js/script.js'),
   post_list: path.resolve('public/KTJ/Post/List/js/script.js'),
   sale_default_search_route_form: path.resolve('public/KTJ/Route/Form/js/script.js'),
   sale_default_search_route_form_short: path.resolve('public/KTJ/Route/ShortForm/js/script.js'),
   sale_default_search_route_result: path.resolve('public/KTJ/Route/Result/js/script.js'),
   sale_default_search_car_result: path.resolve('public/KTJ/Car/Result/js/script.js'),
   sale_default_order_buy: path.resolve('public/KTJ/Order/Buy/js/script.js'),
   sale_default_order_process: path.resolve('public/KTJ/Order/Process/js/script.js'),
   sale_default_station_schedule: path.resolve('public/KTJ/Station/Schedule/js/script.js'),
   sale_queue_apply: path.resolve('public/KTJ/Queue/Apply/js/script.js'),
   sale_board_pass_form: path.resolve('public/KTJ/BoardingPass/Form/js/script.js'),
   crm_support_show: path.resolve('public/KTJ/CRM/Support/Show/js/script.js'),
   crm_booker_show: path.resolve('public/KTJ/CRM/Booker/Show/js/script.js'),
   crm_common_grid: path.resolve('public/KTJ/CRM/Common/Grid/js/script.js'),
   call_me_form: path.resolve('public/KTJ/CallMe/js/script.js'),
   passenger_crud: path.resolve('public/KTJ/Passenger/Crud/js/script.js'),
   sale_default_get_ticket: path.resolve('public/KTJ/GetTicket/js/script.js'),
   crm_comparison_file_upload: path.resolve('public/KTJ/CRM/Comparison/js/script.js'),
   promo_list: path.resolve('public/KTJ/Promo/List/js/script.js'),
 },
 output: {
   path: path.join(__dirname, 'web/assets'),
   filename: '[name].bundle.js',
   chunkFileName: `[name].bundle.js`
 },
 optimization: {
   runtimeChunk: 'single',
   splitChunks: {
     chunks: 'all',
     maxInitialRequests: Infinity,
     minSize: 0,
     cacheGroups: {
       vendor: {
         test: /[\\/]node_modules[\\/]/,
         name( module ) {
           // get the name. E.g. node_modules/packageName/not/this/part.js
           // or node_modules/packageName
           const packageName = module.context.match(/[\\/]node_modules[\\/](.*?)([\\/]|$)/)[1];

           // npm package names are URL-safe, but some servers don't like @ symbols
           return `npm.${packageName.replace('@', '')}`;
         },
       },
     },
   },
 },
 plugins: [
   // this handles the bundled .css output file
   new ExtractTextPlugin({
     filename: '[name].css'
   }),
   new webpack.ProvidePlugin({
     $: "jquery",
     jQuery: "jquery",
     "window.jQuery": "jquery'",
     "window.$": "jquery"
   }),
   new webpack.HashedModuleIdsPlugin(),
 ],
 resolve: {
   alias: {
     ktj: path.resolve(__dirname, 'public/KTJ'),
     calendar: path.resolve(__dirname, 'public/KTJ/Components/Calendar'),
     modal: path.resolve(__dirname, 'public/KTJ/Components/Modal'),
     Messages: path.resolve(__dirname, 'public/messages'),
     Blank: path.resolve(__dirname, 'public/KTJ/Blank'),
     '../../theme.config': path.resolve(__dirname, 'public/KTJ/Semantic/theme.config'),
   },
   extensions: [".ts", ".tsx", ".js", ".jsx", ".json"]
 }
};
источник

H

Hedint in Webpack — русскоговорящее сообщество
Urmat Zhenaliev🇰🇬
Хмм.. у меня вот почему-то не грузит. Чанки генерит, но браузер их не подгружает. Я могу сюда скинуть конфиг, может подскажете?
Хотя я, возможно, не прав.
Сами подгружаются динамические чанки ( import("smth").then(...)  ) при обращении к ним, статические должен разруливать html webpack plugin
источник

🦜

🦜 in Webpack — русскоговорящее сообщество
Там в mini extract css добавили hmr, обновлялся кто? Дайте фидбек
источник

倫岡

倫太郎 岡部 in Webpack — русскоговорящее сообщество
это нормально
источник

倫岡

倫太郎 岡部 in Webpack — русскоговорящее сообщество
потому что люди тупые
источник

倫岡

倫太郎 岡部 in Webpack — русскоговорящее сообщество
я серьезно
источник

倫岡

倫太郎 岡部 in Webpack — русскоговорящее сообщество
кик = бан
источник

倫岡

倫太郎 岡部 in Webpack — русскоговорящее сообщество
телеграм считает иначе
источник
2019 April 18

D

Dmitry in Webpack — русскоговорящее сообщество
как я понимаю, вебпак требует избегать глобальных переменных среди скриптов. Если мне нужно передать значение переменной в скрипт из HTML, например url = "/en/products", то как мне лучше передать это?
источник

A

Alex CherryTea in Webpack — русскоговорящее сообщество
Dmitry
как я понимаю, вебпак требует избегать глобальных переменных среди скриптов. Если мне нужно передать значение переменной в скрипт из HTML, например url = "/en/products", то как мне лучше передать это?
Лучше убрать этот скрипт из html
источник

👤U

👤 User in Webpack — русскоговорящее сообщество
Рабочие практики:
Получить из api, сделай ajax запрос
Или вытащи из html -
<div data-url="foo.html">
<input type="hidden" value="foo.html">
источник

👤U

👤 User in Webpack — русскоговорящее сообщество
Но все это выглядит как костыли
источник

D

Dmitry in Webpack — русскоговорящее сообщество
data атрибут по-моему неплохой вариант, не оч только если нужно передать большой объект. Спасибо
источник

A

Alex CherryTea in Webpack — русскоговорящее сообщество
👤 User
Рабочие практики:
Получить из api, сделай ajax запрос
Или вытащи из html -
<div data-url="foo.html">
<input type="hidden" value="foo.html">
И зачем это?
источник

A

Alex CherryTea in Webpack — русскоговорящее сообщество
👤 User
Но все это выглядит как костыли
Локалсторадж хотяб, а то совсем по жести
источник

👤U

👤 User in Webpack — русскоговорящее сообщество
»Из html
То есть из бэкенда, полагаю.
источник

👤U

👤 User in Webpack — русскоговорящее сообщество
Alex CherryTea
И зачем это?
Ну и да, костыльненько.
источник

A

Alex CherryTea in Webpack — русскоговорящее сообщество
👤 User
»Из html
То есть из бэкенда, полагаю.
Ну бекенд же может вставить тег скрипт который положит что то в локалсторадж
источник

👤U

👤 User in Webpack — русскоговорящее сообщество
>:D
источник