Next.js: рд╕рд░реНрд╡рд░ рд░рд╣рд┐рдд рдЕрдЧрд▓рд╛: `рдЕрдЧрд▓рд╛` рджреЗрд╡-рдХреЗрд╡рд▓ рдирд┐рд░реНрднрд░рддрд╛ рдмрдирд╛рдПрдВ, рдЫреЛрдЯреЗ рдмрд┐рд▓реНрдб рдФрд░ рддреЗрдЬрд╝ рдмреВрдЯрдЕрдк рдХреЗ рд▓рд┐рдП `рдЕрдЧрд▓рд╛-рд╕рд░реНрд╡рд░` рдкреЗрд╢ рдХрд░реЗрдВ

рдХреЛ рдирд┐рд░реНрдорд┐рдд 29 рдордИ 2018  ┬╖  52рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: vercel/next.js

рд╕рдорд╕реНрдпрд╛: рдЬрдм рдПрдХ рдЙрддреНрдкрд╛рджрди рдирд┐рд░реНрдорд╛рдг рдХреЗ рд▓рд┐рдП рдЕрдиреБрдХреВрд▓рди, рд▓рд╛рдЧреВ next start рдпрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ require('next') рдХреЗ рднреАрддрд░ рдПрдХ рдХрд╕реНрдЯрдо server.js рдХреЗ рдкреВрд░реЗ рд╕реЗрдЯ рд▓рд╛рдиреЗ рд╢рд╛рдорд┐рд▓ рд╣реИ next рд╕рд╣рд┐рдд рдирд┐рд░реНрднрд░рддрд╛, рдЬреЛ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рд╡рд┐рдХрд╛рд╕ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИрдВ, рдЬреИрд╕реЗ webpack ред

рди рдХреЗрд╡рд▓ рдирд┐рд░реНрдорд╛рдг рдЫрд╡рд┐ рдХреЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╕реЗ рдпрд╣ рд╕рдорд╕реНрдпрд╛рдЧреНрд░рд╕реНрдд рд╣реИ рдФрд░ рдЙрддреНрдкрд╛рджрди рдирд┐рд░реНрдорд╛рдг рдХрд░рддреЗ рд╕рдордп рд╕рдордп рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдХреЛ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рддрд╛ рд╣реИ, рдмрд▓реНрдХрд┐ рдпрд╣ рдмреВрдЯрдЕрдк рд╕рдордп рдХреЛ рднреА рдиреБрдХрд╕рд╛рди рдкрд╣реБрдВрдЪрд╛рддрд╛ рд╣реИред _рдиреЛрдЯ: рдпрд╣ рдЗрд╕ рддрдереНрдп рд╕реЗ рдХрдо рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рд╣рдо рдзреНрдпрд╛рди рд╕реЗ рднрд╛рд░реА рдирд┐рд░реНрднрд░рддрд╛ рдЬреИрд╕реЗ webpack рдХреЛ рджреЗрд╡ рдореЛрдб рдореЗрдВ рд▓реЛрдб рдХрд░рддреЗ рд╣реИрдВред_

рдкреНрд░рджрд░реНрд╢рди рдХреЗ рдкреНрд░рддрд┐ рдЬрд╛рдЧрд░реВрдХ рдФрд░ _рдХреЛрд▓реНрдб рд╕реНрдЯрд╛рд░реНрдЯ рдЯрд╛рдЗрдореНрд╕_ рдХреЗ рдкреНрд░рддрд┐ рд╕рдВрд╡реЗрджрдирд╢реАрд▓ рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рджреЗрдЦреЗрдВ: https://twitter.com/rauchg/status/990667331205447680), рд╣рдо next-server рдкреИрдХреЗрдЬ рдкреЗрд╢ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдЗрд╕рдореЗрдВ require('next') рдЬреИрд╕реА рд╣реА рдХреНрд╖рдорддрд╛рдПрдВ рд╣реЛрдВрдЧреА, рд╕рднреА рд╡рд┐рдХрд╛рд╕-рд╕рдордп рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдШрдЯрд╛рдПрдВ, рд╕рд╛рде рд╣реА рдПрдХ рдмрд╣реБрдд рдЫреЛрдЯрд╛ next-server рд╕реАрдПрд▓рдЖрдИ рдЬреЛ рдПрдХ рдмрдВрджрд░рдЧрд╛рд╣ рдЦреЛрд▓ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рд╕реБрдВрджрд░ рд╢рдЯрдбрд╛рдЙрди рдХрд░ рд╕рдХрддрд╛ рд╣реИред

рд╣рдо рдХрд┐рд╕рдХреЗ рд▓рд┐рдП рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ:

  • next-server рдХрд╛ рдХреБрд▓ рдирд┐рд░реНрднрд░рддрд╛ рд╕реЗрдЯ рдЬрд┐рддрдирд╛ рд╕рдВрднрд╡ рд╣реЛ
  • рдЬрд┐рддрдиреА рдЬрд▓реНрджреА рд╣реЛ рд╕рдХреЗ рдмреВрдЯрдЕрдк рд╕рдордп

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╣рдореЗрдВ examples/ рдореЗрдВ рдПрдХ рдЙрджрд╛рд╣рд░рдг рдкреНрд░рджрд╛рди рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ next-server рд╕рд╛рде рд╕рдВрдпреЛрдЬрди рдореЗрдВ pkg рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреИрд╕реЗ рдХрд░реЗрдВ рддрд╛рдХрд┐ рдЖрдкрдХреЗ Next.js рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рд╕реНрд╡-рдирд┐рд╣рд┐рдд рдИрдПрд▓рдПрдл рдмрд╛рдЗрдирд░реА рдХреЗ рд░реВрдк рдореЗрдВ рдирд┐рд░реНрдпрд╛рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХреЗред

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рд╣рдорд╛рд░реЗ рдлрд╝реНрд░рдВрдЯрдПрдВрдб рдХреЗ рд▓рд┐рдП рдирд╛рдУ 2.0 рдкрд░ рд╣рдо рдЬреЛ рдардВрдб рдкреНрд░рд╛рд░рдВрдн рд╕рдордп рджреЗрдЦрддреЗ рд╣реИрдВ, рд╡рд╣ 1.5s рд╣реИ, 80mb IIRC рдХреЗ рдЫрд╡рд┐ рдЖрдХрд╛рд░ рдХреЗ рд▓рд┐рдП

2018-05-29 16 50 37

рдиреЛрдб рдпрд╛ V8 рдпрд╛ рдХрд┐рд╕реА рднреА рдирд┐рд░реНрднрд░рддрд╛ рдореЗрдВ рдХрд┐рд╕реА рднреА рдмрджрд▓рд╛рд╡ рдХреЗ рдмрд┐рдирд╛ рдЗрд╕реЗ 1s рдХреЗ рдмрд╣реБрдд рдХрд░реАрдм рдмрдирд╛рдирд╛ рд╕рдВрднрд╡ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдЬрд┐рд╕рдХрд╛ рдардВрдбрд╛ рдореВрд▓реНрдпрд╛рдВрдХрди рд╕рдордп рдХрд╛ рдПрдХ рдЕрдЪреНрдЫрд╛ рд╣рд┐рд╕реНрд╕рд╛ рд▓реЗрддрд╛ рд╣реИ (рдЬреИрд╕реЗ react рдФрд░ react-dom )

рд╕рднреА 52 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рд╣рдорд╛рд░реЗ рдлрд╝реНрд░рдВрдЯрдПрдВрдб рдХреЗ рд▓рд┐рдП рдирд╛рдУ 2.0 рдкрд░ рд╣рдо рдЬреЛ рдардВрдб рдкреНрд░рд╛рд░рдВрдн рд╕рдордп рджреЗрдЦрддреЗ рд╣реИрдВ, рд╡рд╣ 1.5s рд╣реИ, 80mb IIRC рдХреЗ рдЫрд╡рд┐ рдЖрдХрд╛рд░ рдХреЗ рд▓рд┐рдП

2018-05-29 16 50 37

рдиреЛрдб рдпрд╛ V8 рдпрд╛ рдХрд┐рд╕реА рднреА рдирд┐рд░реНрднрд░рддрд╛ рдореЗрдВ рдХрд┐рд╕реА рднреА рдмрджрд▓рд╛рд╡ рдХреЗ рдмрд┐рдирд╛ рдЗрд╕реЗ 1s рдХреЗ рдмрд╣реБрдд рдХрд░реАрдм рдмрдирд╛рдирд╛ рд╕рдВрднрд╡ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдЬрд┐рд╕рдХрд╛ рдардВрдбрд╛ рдореВрд▓реНрдпрд╛рдВрдХрди рд╕рдордп рдХрд╛ рдПрдХ рдЕрдЪреНрдЫрд╛ рд╣рд┐рд╕реНрд╕рд╛ рд▓реЗрддрд╛ рд╣реИ (рдЬреИрд╕реЗ react рдФрд░ react-dom )

рддреБрдо, рдпрд╣ рдХрдорд╛рд▓ рд╣реИ !! :рдУ

рд╡рд╛рд╣ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ред

next-server рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдкреНрд░рд╢реНрдиред

  1. рдХреНрдпрд╛ рдпрд╣ рдПрдХ рд▓рд╛рдЗрдЯ рдПрдХреНрд╕рдкреНрд░реЗрд╕ рд╕рд░реНрд╡рд░ рд╣реЛрдЧрд╛?
  2. рд╣рд╛рдБ, рдХреНрдпрд╛ рдпрд╣ рдПрдХреНрд╕рдкреНрд░реЗрд╕ рдорд╛рд░реНрдЧреЛрдВ рдФрд░ next-routes рд╕рд╛рде рд╡рд┐рдиреНрдпрд╛рд╕ рдпреЛрдЧреНрдп рд╣реЛрдЧрд╛?

@ Nishchit14 рдпрджрд┐ рдЖрдк рдмрд┐рд▓реНрдб рдЖрдХрд╛рд░ рдХреЛ рдХрдо рд░рдЦрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣реЗ рдереЗ рддреЛ рдЖрдк express рдирд╣реАрдВ рдЬреЛрдбрд╝реЗрдВрдЧреЗред

рдореБрдЭреЗ рдпрдХреАрди рд╣реИ рдХрд┐ next-routes рдЕрднреА рднреА рдареАрдХ рдХрд╛рдо рдХрд░реЗрдЧрд╛ред

рддреЛ рд╣рдо рдпрд╣рд╛рдВ рдЬрд┐рд╕ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рд╡рд╣ рдореМрдЬреВрджрд╛ рд╕рд░реНрд╡рд░ рдХреЛ рдЕрдкрдиреЗ рдкреИрдХреЗрдЬ рдореЗрдВ рдирд┐рдХрд╛рд▓ рд░рд╣рд╛ рд╣реИред рддреЛ рдпрд╣ рдкрд╣рд▓реЗ рдХреА рддрд░рд╣ рд╣реА рдХрд╛рдо рдХрд░реЗрдЧрд╛, рд▓реЗрдХрд┐рди рдЕрдЧрд▓рд╛ рдЖрдпрд╛рдд рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп, рдЖрдк рдЕрдЧрд▓рд╛ рд╕рд░реНрд╡рд░ рдЖрдпрд╛рдд рдХрд░рддреЗ рд╣реИрдВред

рдпрд╣ рдХрдорд╛рд▓ рдХрд╛ рд╣реИ! рдореИрдВ рдФрд░ рдЕрдиреНрдп рд▓реЛрдЧ рдЬрд┐рдиреНрд╣реЗрдВ рдореИрдВ рдЬрд╛рдирддрд╛ рд╣реВрдВ, рд╕реНрдХреИрдВрдбрд┐рдпрдо ( рдЗрд╕ рдЧрд╛рдЗрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ )

1) рдкреИрдХреЗрдЬ рдХрд╛ рдЖрдХрд╛рд░ред рд▓реИрдореНрдмреНрдбрд╛ рдЖрдкрдХреЛ 50рдПрдордмреА рдХреА рд╣рд╛рд░реНрдб рд▓рд┐рдорд┐рдЯ рджреЗрддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рд╢рд╛рдорд┐рд▓ рдХрд┐рдП рдЧрдП рд╕рднреА рджреЗрд╡-рдЯреВрд▓реНрд╕ рдХреЗ рд╕рд╛рде рдкрд╛рд╕ рдХрд░рдирд╛ рдЖрд╕рд╛рди рд╣реЛ рд╕рдХрддрд╛ рд╣реИред

2) рдХреЛрд▓реНрдб рд╕реНрдЯрд╛рд░реНрдЯред рддреНрд╡рд░рд┐рдд рдмреВрдЯрдЕрдк рдмрд╣реБрдд рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд▓реИрдореНрдмреНрдбрд╛ рдХрд┐рд╕реА рднреА рд╕рдордп рдЕрдзрд┐рдХ рд╕рд░реНрд╡рд░реЛрдВ рдХреЛ рд╕реНрдкрд┐рди рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓реЗ рд╕рдХрддрд╛ рд╣реИред рдореМрдЬреВрджрд╛ рд╕рд░реНрд╡рд░ рднреА рдЕрдзрд┐рдХрддрдо ~4h рд░рд╣рддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рдкреВрд░реЗ рдЬреАрд╡рдирдЪрдХреНрд░ рдореЗрдВ рдХреЛрд▓реНрдб рд╕реНрдЯрд╛рд░реНрдЯ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реЛрдЧрд╛ред

рдЗрд╕ рдкрд╣рд▓ рдХреЛ рджреЗрдЦрдХрд░ рдмрд╣реБрдд рдЦреБрд╢реА рд╣реБрдИ рдФрд░ рдорджрдж рдХрд░рдиреЗ рдореЗрдВ рдЦреБрд╢реА рд╣реБрдИ!

рдпрд╣ рдПрдХ рдЕрдЪреНрдЫрд╛ рд╡рд┐рдЪрд╛рд░ рд╣реИ, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ Nuxt.js рдХреЗ рд╕рд╛рде рднреА рдРрд╕рд╛ рд╣реА рд╣реИ, рд╣рдордиреЗ рдЗрд╕реЗ nuxt-start рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рд╡рд╣ рдХрдорд╛рдВрдб рд╣реИ рдЬрд┐рд╕рдХреА рдЖрдкрдХреЛ nuxt start рдЪрд▓рд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ -> nuxt-start

рдЗрд╕рдХрд╛ рдмрд╛рд░реАрдХреА рд╕реЗ рдкрд╛рд▓рди рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдХреНрдпрд╛ рд╕рдВрднрд╡ рд╣реИ, рдХреЗ рд▓рд┐рдП рдПрдХ рдбреЗрдЯрд╛ рдмрд┐рдВрджреБ рдХреЗ рд░реВрдк рдореЗрдВ www.bustle.com <1s рдардВрдб рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИ рдХреЗ рд╕рд╛рде рдПрдбрдмреНрд▓реНрдпреВрдПрд╕ рд▓реИрдореНрдмреНрдбрд╛ рдкрд░ рдПрдХ рдПрд╕рдПрд╕рдЖрд░ preact рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╣реИред рд╕рдВрдкреВрд░реНрдг рдкрд░рд┐рдирд┐рдпреЛрдЬрд┐рдд рдЙрддреНрдкрд╛рджрди рдЬрд╝рд┐рдк рдлрд╝рд╛рдЗрд▓ 166kb рд╣реИред рд╡рд╣ рд╕рднреА рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдФрд░ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЛрдб рд╣реИред рд╡реЗрдмрдкреИрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдмрдВрдбрд▓рд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

@southpolesteve рд╕рд╛рдЭрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред рдпрд╣ рд╕реБрдкрд░ рдкреНрд░рднрд╛рд╡рд╢рд╛рд▓реА рд╣реИред #рд▓рдХреНрд╖реНрдп

рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдорд╛рдорд▓рд╛ micro рдФрд░ micro-dev рд╕рдорд╛рди рджрд┐рдЦрддрд╛ рд╣реИред

рдПрдХ рд╣реА рдирд╛рдордХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреНрдпреЛрдВ рдирд╣реАрдВ рдХрд░рддреЗ? next рдФрд░ next-dev

рдореИрдВ рдЗрд╕ рдЙрджрд╛рд╣рд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ next.js рдФрд░ рд╕рд░реНрд╡рд░ рд░рд╣рд┐рдд рдХреЗ рд╕рд╛рде рдЧрдбрд╝рдмрдбрд╝ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдФрд░ рдЙрддреНрд╕реБрдХ рд╣реВрдВ рдХрд┐ рдЕрдм рдЫреЛрдЯреЗ рдирд┐рд░реНрдорд╛рдг рдХреЛ рдкреВрд░рд╛ рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рд╣реИ рдпрд╛ рдирд╣реАрдВред рдХреНрдпрд╛ рдиреЛрдб_рдореЙрдбреНрдпреВрд▓реНрд╕ рдХреА рдПрдХ рд╕реВрдЪреА рд╣реИ рдЬрд┐рд╕рдХреА рд╣рдореЗрдВ рдЙрддреНрдкрд╛рджрди рдореЗрдВ рдмрд┐рд▓реНрдХреБрд▓ рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ рдФрд░ рд╕рд░реНрд╡рд░ рд░рд╣рд┐рдд рдпрд╛ рд░реАрдкреИрдХ-рдЬрд╝рд┐рдк рдЬреИрд╕реЗ рдкреИрдХреЗрдЬрд░ рдореЗрдВ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рд╕рд╛рде рдмрд╛рд╣рд░ рд░рдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ?

@Enalmada рдореИрдВ рдХрдИ рдбреАрдкреАрдПрд╕ рдХреЗ рд╕рд╛рде рдЕрдЧрд▓рд╛.рдЬреЗрдПрд╕ рдЪрд▓рд╛ рд░рд╣рд╛ рд╣реВрдВ рдФрд░ material-ui рдЙрдирдореЗрдВ рд╕реЗ рдПрдХ рд╣реЛрдиреЗ рдХреЗ рдирд╛рддреЗ, рдореЗрд░реЗ рдкрд╛рд╕ рд╕реНрдХреЗрд▓ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдПрдХ рдмрд╣реБрдд рдмрдбрд╝рд╛ рдРрдк рд╣реИ рд▓реЗрдХрд┐рди рд▓реИрдореНрдмреНрдбрд╛ рдореЗрдВ рдЕрдкрд▓реЛрдб рдХрд┐рдпрд╛ рдЧрдпрд╛ рдЬрд╝рд┐рдк ~ 45 рдПрдордмреА рд╣реИред рдЖрдк рдХрд┐рд╕ рдЖрдХрд╛рд░ рдХреА рддрд▓рд╛рд╢ рдореЗрдВ рд╣реИрдВ?

@albinekb рдореИрдВ 166kb рд╕реЗ рдКрдкрд░ Southpolesteve bustle.com рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рд╕реЗ рдкреНрд░реЗрд░рд┐рдд рд╣реВрдВ рдФрд░ рдЖрд╢реНрдЪрд░реНрдп рдХрд░рддрд╛ рд╣реВрдВ рдХрд┐ рдореЗрд░рд╛ "45MB" рдХрд┐рддрдирд╛ рдмреЗрдХрд╛рд░ рд╣реИ рдФрд░ рдЗрд╕реЗ рдирд┐рдХрд╛рд▓рдирд╛ рдЖрд╕рд╛рди рд╣реИ рдЕрдЧрд░ рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕ рдЙрддреНрдХреГрд╖реНрдЯ рдЯрд┐рдХрдЯ рдХреЗ рд╕рдорд╛рдкреНрдд рд╣реЛрдиреЗ рддрдХ рд╣реИрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдПрдХ рдбрд┐рд╕реНрдЯ рдмрд╣рд┐рд╖реНрдХреГрдд рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдХреНрдпрд╛ рд░рдЦрд╛ рдЬрд╛рдПред .

@albinekb рдЕрддреНрдпрдзрд┐рдХ рдЕрдиреБрд╢рдВрд╕рд╛ рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рдЖрдк рд▓реИрдореНрдмреНрдбрд╛ рдХреЗ рд▓рд┐рдП рдЕрдкрдиреЗ рдЬреЗрдПрд╕ рдХреЛ рдмрдВрдбрд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП

рдпрджрд┐ рдЖрдк ZEIT Now рдореЗрдВ рддреИрдирд╛рдд рд╣реИрдВ рдФрд░ рдЖрдк рдЕрдкрдиреА рдЫрд╡рд┐ рдХреЛ рддреЗрдЬрд╝ рдХреЛрд▓реНрдб рдмреВрдЯреНрд╕ рдХреЗ рд▓рд┐рдП рдЫреЛрдЯрд╛ рд░рдЦрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рдЗрд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ npm рдирд┐рд░реНрднрд░рддрд╛ рдХреЗ рдЖрдХрд╛рд░ рдХреА рдЬрд╛рдБрдЪ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреИрдХреЗрдЬ рдлрд╝реЛрдмрд┐рдпрд╛ рдЬреИрд╕реЗ рдЯреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ (рдпрд╛ рдХреЗрд╡рд▓ рд╡рд░реНрддрдорд╛рди рдирд┐рд░реНрднрд░рддрд╛ рдХреЗ рдЖрдХрд╛рд░ рдХреА рдЬрд╛рдБрдЪ рдХрд░реЗрдВ) рдмреНрд▓реЛрдЯ рдХрд╛рдЯрдиреЗ рдХреЗ рд▓рд┐рдП)ред

рдмреНрд▓реЛрдЯ рд╕реЗ рд▓рдбрд╝рдиреЗ рдореЗрдВ рдЖрдкрдХреА рдорджрдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд░реАрдбрдореА рдореЗрдВ рднреА рдЗрд╕реА рддрд░рд╣ рдХреЗ рдХрдИ рдЯреВрд▓ рд╣реИрдВред рдЗрд╕реЗ рдпрд╣рд╛рдВ рджреЗрдЦреЗрдВ: https://github.com/styfle/packagephobia

рдХреНрдпрд╛ рдЗрд╕реЗ рдЕрдЧрд▓реА 7 рд░рд┐рд▓реАрдЬрд╝ рдореЗрдВ рд╕рдВрдмреЛрдзрд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдерд╛? :(

рдпрджрд┐ рдЖрдк рдЕрднреА zeit рдореЗрдВ рдкрд░рд┐рдирд┐рдпреЛрдЬрд┐рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдФрд░ рдЖрдк рдЕрдкрдиреА рдЫрд╡рд┐ рдХреЛ рддреЗрдЬрд╝ рдХреЛрд▓реНрдб рдмреВрдЯреНрд╕ рдХреЗ рд▓рд┐рдП рдЫреЛрдЯрд╛ рд░рдЦрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рдкреИрдХреЗрдЬ рдлрд╝реЛрдмрд┐рдпрд╛ рдЬреИрд╕реЗ рдЯреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ

рд▓рд╛рдирдд рд╣реИ рдЖрдк рдФрд░: https://packagephobia.now.sh/result?p=antd

@Enalmada рдпрд╣ рд╢рд╛рдпрдж antd рдХреА рдирд┐рд░реНрднрд░рддрд╛ рд╣реИ рдЬреЛ рдЬрд┐рдореНрдореЗрджрд╛рд░ рд╣реИрдВ, рдкреБрд╕реНрддрдХрд╛рд▓рдп рд╣реА рдирд╣реАрдВред рдореИрдВ рдЗрд╕реЗ https://packagephobia.now.sh/result?p=%40material-ui%2Fcore рдХреЗ рд▓рд┐рдП рджреЗрдЦ рд░рд╣рд╛ рд╣реВрдВ

рдХреНрдпрд╛ рдЗрд╕реЗ рдЕрдЧрд▓реА 7 рд░рд┐рд▓реАрдЬрд╝ рдореЗрдВ рд╕рдВрдмреЛрдзрд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдерд╛? :(

рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реНрдкрд╖реНрдЯ рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП, Next.js 7 Serverless Next.js рдХреА рдиреАрдВрд╡ рд░рдЦрддрд╛ рд╣реИ, рд╣рдордиреЗ рд▓рдЧрднрдЧ 5 рдорд╛рд░реНрдЧреЛрдВ рдХреЛ рд╣рдЯрд╛ рджрд┐рдпрд╛ рд╣реИ, рдХреЗрд╡рд▓ 2 рдХреЛ рдЙрддреНрдкрд╛рджрди рдХреЗ рд▓рд┐рдП рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЖрд╡рд╢реНрдпрдХ рдЫреЛрдбрд╝ рджрд┐рдпрд╛ рд╣реИред

рдХреНрдпрд╛ рд░реЛрд▓рдЕрдк рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рд╕реА рдиреЗ рдХрднреА рдЕрдЧрд▓рд╛.рдЬреЗрдПрд╕ рдкреНрд░рд╛рдкреНрдд рдХрд┐рдпрд╛ рд╣реИ? рдореБрдЭреЗ рдРрд╕рд╛ рд▓рдЧ рд░рд╣рд╛ рд╣реИ рдХрд┐ рдореИрдВ рдмрд╣реБрдд рдХрд░реАрдм рдЖ рдЧрдпрд╛ рд╣реВрдВ...рдореЗрд░реА 60рдореА рдбрд┐рд╕реНрдЯ рдлрд╛рдЗрд▓ рдкрд░ рд░реЛрд▓рдЕрдк рдЪрд▓рд╛рдиреЗ рд╕реЗ рдЖрдХрд╛рд░ 6рдореА рддрдХ рдиреАрдЪреЗ рдЖ рдЧрдпрд╛ред рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ рдбрд┐рд╕реНрдЯ рдлрд╝рд╛рдЗрд▓ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рдирд╣реАрдВ рд╣реЛрдЧреА рдФрд░ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ next.js рдХреЛрдб рдореЗрдВ рдПрдХ рдПрдХрд▓ рдкрд░рд┐рдкрддреНрд░ рдирд┐рд░реНрднрд░рддрд╛ рдХреЗ рдХрд╛рд░рдг рд╣реИ рдЬреЛ рд░реЛрд▓рдЕрдк рдХреЗ рджреМрд░рд╛рди рдПрдХ рдЪреЗрддрд╛рд╡рдиреА рд╣реИред рдЕрдЧрд░ рдХреЛрдИ next.js рдХреЛрдб рдореЗрдВ рд╕рд░реНрдХреБрд▓рд░ рдбрд┐рдкреЗрдВрдбреЗрдВрд╕реА рдХреЛ рд╣рдЯрд╛рдиреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдкрд░ рд╡рдЬрди рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рддреЛ рд╣рдо рд╕рднреА рдмрд╣реБрдд рдЫреЛрдЯреЗ рдмрд┐рд▓реНрдб рдФрд░ рддреЗрдЬ рдмреВрдЯрдЕрдк рдХреЗ рдмрд╣реБрдд рдХрд░реАрдм рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ:
https://github.com/zeit/next.js/issues/5392

рдЗрд╕рдХрд╛ рдмрд╛рд░реАрдХреА рд╕реЗ рдкрд╛рд▓рди рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдХреНрдпрд╛ рд╕рдВрднрд╡ рд╣реИ, рдХреЗ рд▓рд┐рдП рдПрдХ рдбреЗрдЯрд╛ рдмрд┐рдВрджреБ рдХреЗ рд░реВрдк рдореЗрдВ www.bustle.com <1s рдардВрдб рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИ рдХреЗ рд╕рд╛рде рдПрдбрдмреНрд▓реНрдпреВрдПрд╕ рд▓реИрдореНрдмреНрдбрд╛ рдкрд░ рдПрдХ рдПрд╕рдПрд╕рдЖрд░ preact рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╣реИред рд╕рдВрдкреВрд░реНрдг рдкрд░рд┐рдирд┐рдпреЛрдЬрд┐рдд рдЙрддреНрдкрд╛рджрди рдЬрд╝рд┐рдк рдлрд╝рд╛рдЗрд▓ 166kb рд╣реИред рд╡рд╣ рд╕рднреА рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдФрд░ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЛрдб рд╣реИред рд╡реЗрдмрдкреИрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдмрдВрдбрд▓рд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

@southpolesteve рдХреНрдпрд╛ рдЖрдк рдЕрдкрдиреЗ рд╡реЗрдмрдкреИрдХ рдмрдВрдбрд▓

@shauns рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рдореИрдВ рдЕрдм рд╣рд▓рдЪрд▓ рдореЗрдВ рдирд╣реАрдВ рд╣реВрдВ рдФрд░ рдореЗрд░реЗ рдкрд╛рд╕ рдЕрдм рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдб рдирд╣реАрдВ рд╣реИ: /

@southpolesteve рдХреЛрдИ рдЪрд┐рдВрддрд╛ рдирд╣реАрдВ! рдХрдо рд╕реЗ рдХрдо рд╡реЗрдмрдкреИрдХ рдореЗрдВ рдЗрд╕рдХреА рд╕реНрдерд┐рддрд┐ рдЬрд╛рдирдХрд░ рдЕрдЪреНрдЫрд╛ рд▓рдЧрд╛ред

рдХреНрдпрд╛ рд╣рдореЗрдВ рдиреЗрдХреНрд╕реНрдЯ-рд╕рд░реНрд╡рд░ рдкрд░ рдХреБрдЫ рдЦрдмрд░ рдорд┐рд▓ рд╕рдХрддреА рд╣реИ? рдореИрдВрдиреЗ рдЗрд╕ рдорд╣реАрдиреЗ рдкрд╣рд▓реЗ рдХреБрдЫ рдХрдорд┐рдЯ рджреЗрдЦреЗред

рдХреИрдирд░реА рд╢рд╛рдЦрд╛ рдХреА рдЬрд╛рдБрдЪ рдХрд░реЗрдВред

рдЖрдк рдЗрд╕реЗ рдХрдм рдЬрд╛рд░реА рдХрд░рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛ рд░рд╣реЗ рд╣реИрдВ?

рдореИрдВ рдЗрд╕ рд╕рдордп рдХреЛрдИ рдЯрд╛рдЗрдорд▓рд╛рдЗрди рд╕рд╛рдЭрд╛ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ред

рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЗрд╕ рддреНрд░реБрдЯрд┐ рдХреЛ рджреВрд░ рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░ рд╕рдХрддрд╛ рд╣реИ:
https://spectrum.chat/zeit/general/unable-to-import-module-now-launcher-error~2662f0ba-4186-402f-b1db-2e3c43d8689a

рдЕрднреА рдЙрддрд░рд╛ #5927

@timneutkens рдХреНрдпрд╛ рдореБрдЭреЗ next рдХреЛ devрдирд┐рд░реНрднрд░рддрд╛ рдореЗрдВ рд▓реЗ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ рдореЗрд░реА рдирд┐рд░реНрднрд░рддрд╛ рдореЗрдВ next-server рдЬреЛрдбрд╝рдирд╛ рдЪрд╛рд╣рд┐рдП рдпрд╛ рдХреНрдпрд╛ рдЖрдк рдЗрд╕реЗ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдмреЗрдмреЗрд▓ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХрд░ рд░рд╣реЗ рд╣реИрдВ?
https://github.com/zeit/next.js/blob/canary/packages/next/build/babel/plugins/next-to-next-server.ts

@Skaronator рдпрджрд┐ рдЖрдк # 5927 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рддреЛ рдпрд╣ рди рддреЛ рд╣реИ, рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдпрд╣ рдкреНрд░рддрд┐ рдкреГрд╖реНрда рдПрдХ рдмрдВрдбрд▓ рдЖрдЙрдЯрдкреБрдЯ рдХрд░реЗрдЧрд╛, рдХреЛрдИ рдирд┐рд░реНрднрд░рддрд╛ рдЖрд╡рд╢реНрдпрдХ рдирд╣реАрдВ рд╣реИред рдорддрд▓рдм рдЖрдк рд▓реЗ рд╕рдХрддреЗ рд╣реИрдВ .next/serverless/index.js рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ ( require('./.next/serverless/index.js') ) рдФрд░ рдлрд┐рд░ рдЗрд╕реЗ render рд╡рд┐рдзрд┐ рдХрд╣реЗрдВ:

const page = require('./.next/serverless/index.js')

page.render(req, res)

рдпрд╣ рдкреГрд╖реНрда рдХреЛ рдкреНрд░рд╕реНрддреБрдд рдХрд░реЗрдЧрд╛ рдФрд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рд╕рдорд╛рдкреНрдд рдХрд░реЗрдЧрд╛

рд╡рд╣ рддреЛ рдХрдорд╛рд▓ рд╣реИ!
рдореИрдВ рдЗрд╕реЗ рдЖрдЬрдорд╛ рд░рд╣рд╛ рд╣реВрдВ рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдЗрд╕реЗ рд▓реИрдореНрдмреНрдбрд╛ рдкрд░ рдХрд╛рдо рдХрд░рдиреЗ рдореЗрдВ рдХреБрдЫ рдкрд░реЗрд╢рд╛рдиреА рд╣реИред рдХреНрдпрд╛ рдХрд┐рд╕реА рдХреЗ рднреА рдкрд╛рд╕ рдХреЛрдИ рднреА рд╕реБрдЭрд╛рд╡ рд╣реИ?

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдореЗрдВ рдЕрдм рдХрд╕реНрдЯрдо рдПрдХреНрд╕рдкреНрд░реЗрд╕ рд╕рд░реНрд╡рд░ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рд╣рдореЗрдВ рдкрде рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рд╕рд░реНрд╡рд░ рд░рд╣рд┐рдд рдлрд╝рд╛рдЗрд▓ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИ

рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ
рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдмрд┐рд▓реНрдб рдЪрд░рдг рдХреЛ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд░рдиреЗ рдХреЗ рддрд░реАрдХреЗ рдХреЛ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдЧрд╣рд░рд╛рдИ рд╕реЗ рдЦреБрджрд╛рдИ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ:

const serverless = require("serverless-http");
const http = require('http');
const app = require('./.next/serverless/index.js');
const server = new http.Server((req, res) => app.render(req, res))
app.prepare().then(() => {
    const handler = serverless(server, {
        binary: binaryMimeTypes
    });
    return handler(event, context, callback);
});

рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдк "рд╕рд░реНрд╡рд░ рд░рд╣рд┐рдд" рдХреЗ рд╕рд╛рде "рдХрд╕реНрдЯрдо рд╕рд░реНрд╡рд░" рдХреЛ рднреНрд░рдорд┐рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рдЙрдирдХреЗ рдПрдкреАрдЖрдИ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрд▓рдЧ рд╣реИрдВ, рд╕рд░реНрд╡рд░ рд░рд╣рд┐рдд рдореЗрдВ рдХреЛрдИ .prepare рд╡рд┐рдзрд┐ рдирд╣реАрдВ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рддреИрдпрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рднреА рдирд╣реАрдВ рд╣реИ, рд╣рдо рддреБрд░рдВрдд рдкреГрд╖реНрда рдХреЛ рдПрдЪрдЯреАрдПрдордПрд▓ рдореЗрдВ рдкреНрд░рд╕реНрддреБрдд рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рд╕рдорд╛рдкреНрдд рдХрд░рддреЗ рд╣реИрдВ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдЬрдм render рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред

const serverless = require("serverless-http");
const http = require('http');
const page = require('./.next/serverless/index.js');
const server = new http.Server((req, res) => page.render(req, res))
const handler = serverless(server, {
  binary: binaryMimeTypes
});
handler(event, context, callback);

рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдФрд░ рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ рдХрд┐ рдКрдкрд░ рджрд┐рдП рдЧрдП рдХреЛрдб рдиреЗ рдХреНрдпреЛрдВ рдХрд╛рдо рдХрд┐рдпрд╛ (рд╢рд╛рдпрдж рдпрд╣ рд╕рд┐рд░реНрдл рдХреИрд╢ рдерд╛) рд▓реЗрдХрд┐рди рдореЗрд░реЗ рдпрд╛ рдЖрдкрдХреЗ рдХреЛрдб рдХреЗ рдЯреБрдХрдбрд╝реЗ рдиреЗ рдХрд╛рдо рдирд╣реАрдВ рдХрд┐рдпрд╛ рдХреНрдпреЛрдВрдХрд┐ serverless-http http.Server рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдореИрдВ рдХреЗрд╡рд▓ page.render(req, res) рд╡рд╛рдкрд╕ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рдХреНрдпреЛрдВрдХрд┐ рд▓реИрдореНрдмреНрдбрд╛ event рдСрдмреНрдЬреЗрдХреНрдЯ рдЖрд╡рд╢реНрдпрдХ рд░реЗрдВрдбрд░ req param рдХреЛ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рд╣реИред

рд╕рд╛рде рд╣реА, рдореИрдВ рдПрдХреНрд╕рдкреНрд░реЗрд╕/рдХреЛрдЖ/рдЬреЛ рдХреБрдЫ рднреА рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЗрд╕ рдЕрдЧрд▓реА рдирдИ рд╕реБрд╡рд┐рдзрд╛ рдХреЗ рдкреВрд░реЗ рдЙрджреНрджреЗрд╢реНрдп рдХреЛ рддреЛрдбрд╝ рджреЗрдЧрд╛ .. ( serverless-http рдирд┐рд░реНрднрд░рддрд╛ рдореБрдХреНрдд рд╣реИ рдЗрд╕рд▓рд┐рдП рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдареАрдХ рдерд╛)

рдореИрдВ рд╡рд┐рдЪрд╛рд░реЛрдВ рд╕реЗ рдмрд╛рд╣рд░ рд╣реВрдБ: /

рд╢рд╛рдпрдж рдпрд╣ рдЖрдкрдХреЛ @guillaumebreux https://github.com/zeit/now-builders/blob/master/packages/now-node-bridge/bridge.js рдореЗрдВ рдорджрдж рдХрд░реЗрдЧрд╛ред

рдзрдиреНрдпрд╡рд╛рдж @timneutkens , рдореИрдВ рдЖрдкрдХреА рдорджрдж рдХреА рд╕рд░рд╛рд╣рдирд╛ рдХрд░рддрд╛ рд╣реВрдВред
рд▓реЗрдХрд┐рди рдпрд╣ рдЗрд╕ рд╕рдордп рднреА рдХрд╛рдо рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реИ, рдореБрдЭреЗ рдЕрднреА рднреА рдпрд╣ рддреНрд░реБрдЯрд┐ рд╣реИ: typeError: Parameter "url" must be a string, not undefined

рдореИрдВ рдЗрд╕ рдзрд╛рдЧреЗ рдХреЛ рдкреНрд░рджреВрд╖рд┐рдд рдХрд░рдирд╛ рдмрдВрдж рдХрд░ рджреВрдВрдЧрд╛ рдФрд░ рдЦреБрджрд╛рдИ рдХрд░рддрд╛ рд░рд╣реВрдВрдЧрд╛ рдФрд░ рдЕрдЧрд░ рдореБрдЭреЗ рдХрднреА рдХреЛрдИ рд╕рдорд╛рдзрд╛рди рдорд┐рд▓ рдЬрд╛рдП рддреЛ рдореИрдВ рдПрдХ рдЙрджрд╛рд╣рд░рдг рд▓рд┐рдЦреВрдВрдЧрд╛

рдореИрдВ рдереЛрдбрд╝рд╛ рдЕрд╕реНрдкрд╖реНрдЯ рд╣реВрдБред рдпрд╣ рдереНрд░реЗрдб рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рджреЛ рдкрд░рд┐рджреГрд╢реНрдпреЛрдВ рдкрд░ рд▓рд╛рдЧреВ рд╣реЛрддрд╛ рд╣реИ: рд╕рд░реНрд╡рд░-рд░рд╣рд┐рдд рдРрдкреНрд╕ рдФрд░ рдкреВрд░реНрд╡-рд╕рдВрдХрд▓рд┐рдд рд╕рд░реНрд╡рд░ рдЬрд┐рдирдореЗрдВ рд╕рднреА рдЖрд╡рд╢реНрдпрдХ рд╕рд░реНрд╡рд░-рд╕рд╛рдЗрдб npm рдкреИрдХреЗрдЬ рд╢рд╛рдорд┐рд▓ рд╣реЛрддреЗ рд╣реИрдВ рдЬрд┐рдиреНрд╣реЗрдВ рдПрдХ рд╕рд╛рде рд╡реЗрдмрдкреИрдХ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдЗрд╕ рдзрд╛рдЧреЗ рдкрд░ рдкрд╣рд▓реА рдЯрд┐рдкреНрдкрдгреА рдореЗрдВ рдЬреАрдЖрдИрдПрдл рдмрд╛рдж рдХреЗ рдкрд░рд┐рджреГрд╢реНрдп рдХреЗ рд╕рдВрдмрдВрдз рдореЗрдВ рдкреНрд░рддреАрдд рд╣реЛрддрд╛ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рдореБрдЭреЗ рд░реВрдЪрд┐ рд╣реИред рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ next-server рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдпрд╣ рдПрдирдкреАрдПрдо рдкреИрдХреЗрдЬ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдпрд╛ рдирд╣реАрдВ рднреА рд╣реЛ рд╕рдХрддрд╛ рд╣реИ - рдпрд╣ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ рдЗрд╕рдХреЗ рд╕рд╛рде рдХреЛрдИ рд░рд┐рдкреЛрдЬрд┐рдЯрд░реА рд╕рдВрд▓рдЧреНрди рдирд╣реАрдВ рд╣реИ, рдФрд░ рдореИрдВ Google рдпрд╛ рдЧрд┐рдЯрд╣рдм рдЦреЛрдЬ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдПрдХ рдирд╣реАрдВ рдвреВрдВрдв рд╕рдХрд╛, рд╣рд╛рд▓рд╛рдВрдХрд┐ рд╕рдВрд╕реНрдХрд░рдг рдЯреИрдЧ рдореЗрдВ рд╕реЗ рдПрдХ 8.0.0-рдХреИрдирд░реА.7 рд╣реИ - рдЕрдЧрд▓реЗ рдХрд╛ рдПрдХ рд╕рдВрд╕реНрдХрд░рдг рдЯреИрдЧ - рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рд╕рдВрджреЗрд╣ рд╣реИ рдХрд┐ рдпрд╣ рд╣реИ рд╕рд╣реА рдкреИрдХреЗрдЬред

рдХреНрдпрд╛ рдореИрдВрдиреЗ рдЕрдм рддрдХ рдЬреЛ рд▓рд┐рдЦрд╛ рд╣реИ рд╡рд╣ рд╕рд╣реА рд╣реИ? рдпрджрд┐ рд╣рд╛рдВ, рддреЛ рднрд▓реЗ рд╣реА рд╡рд╣ рдХреИрдирд░реА рдореЗрдВ рд╣реЛ, рдХреНрдпрд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рд╣реИ рдЬрд┐рд╕рд╕реЗ рдореИрдВ рдЙрд╕ рддрдХ рдЬрд▓реНрджреА рдкрд╣реБрдВрдЪ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХреВрдВ?

рдореЗрд░рд╛ рд╡рд░реНрддрдорд╛рди рд╕рдорд╛рдзрд╛рди (рдЬреЛ рд╕реНрдкрд╖реНрдЯ рдХрд╛рд░рдгреЛрдВ рд╕реЗ, рдореИрдВ prod рдореЗрдВ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ ) рдореЗрд░реЗ next.config.js config.externals рд╕реЗ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рд╣рдЯрд╛рдирд╛ рд╣реИред рдкреНрд░рддреАрдд рд╣реЛрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди, рдЬрд┐рди рдХрд╛рд░рдгреЛрдВ рд╕реЗ рдореБрдЭреЗ рд╕рдордЭ рдореЗрдВ рдирд╣реАрдВ рдЖрддрд╛ рд╣реИ, рдпрд╣ рдХреНрд▓рд╛рдЗрдВрдЯ рд╕рд╛рдЗрдб рдкрд░ рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ рджреЗрд░ рд╕реЗ рд▓реЛрдб рдХрд░рдиреЗ рдХрд╛ рдХрд╛рд░рдг рдмрдирддрд╛ рд╣реИ, рдЬрд┐рд╕рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рдкреНрд░рддреНрдпреЗрдХ рдкреГрд╖реНрда рд▓реЛрдб рдкрд░ рдЖрдзреЗ рд╕реЗрдХреЗрдВрдб рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрд╕реНрдерд┐рд░ рдкреГрд╖реНрда рд╣реЛрддрд╛ рд╣реИред (рдореЗрд░рд╛ рдЭреБрдХрд╛рд╡ рдпрд╣ рд╣реИ рдХрд┐ рдРрд╕рд╛ рдЗрд╕рд▓рд┐рдП рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдореЗрд░реЗ рдкрд╛рд╕ рдереАрдо рд╕рдВрджрд░реНрдн рд╣реИ рдЬреЛ рдЪрдпрдирд┐рдд рдереАрдо рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рд╡рд┐рднрд┐рдиреНрди рд╕реНрдЯрд╛рдЗрд▓ рд╢реАрдЯ рд▓реЛрдб рдХрд░рддрд╛ рд╣реИ, рдФрд░ рд╕рд░реНрд╡рд░ рд╕рд╛рдорд╛рдиреНрдп рд╡рд┐рдХреНрд░реЗрддрд╛рдУрдВ рдХреЛ рдмрдВрдбрд▓ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдб рд╡рд┐рднрд╛рдЬрди рдмрд╣реБрдд рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдирд╣реАрдВ рд╣реИред)

рдореИрдВ рдПрдХ рдкреВрд░реНрд╡-рдирд┐рд░реНрдорд┐рдд рд╕рд░реНрд╡рд░ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдкрд╕рдВрдж рдХрд░реВрдВрдЧрд╛ рддрд╛рдХрд┐ рдореБрдЭреЗ 200MB рдиреЛрдб_рдореЙрдбреНрдпреВрд▓реНрд╕ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рди рд╣реЛ рдФрд░ рдлрд┐рд░ рд╣рд░ рдмрд╛рд░ рдЬрдм рдореИрдВ рдПрдХ рдЕрдкрдбреЗрдЯ рдХреЛ рдзрдХреНрдХрд╛ рджреЗрддрд╛ рд╣реВрдВ рддреЛ рдореЗрд░реЗ рдЦрд░рд╛рдм, рдЫреЛрдЯреЗ рдЙрддреНрдкрд╛рджрди рд╡реАрдПрдо рдкрд░ 2 рдорд┐рдирдЯ рдХрд╛ рд╕рдордп рд▓рдЧрддрд╛ рд╣реИред


* "рдкреНрд░реЛрдб" рдХрд╛ рдЙрдкрдпреЛрдЧ рд╢рд┐рдерд┐рд▓ рд░реВрдк рд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдорд┐рд╢рди рдХреНрд░рд┐рдЯрд┐рдХрд▓ рдпрд╛ рд╡рд╣ рд╕рдм рдкреЗрд╢реЗрд╡рд░ рдирд╣реАрдВ рд╣реИ

рдЗрд╕рдХрд╛ рдмрд╛рд░реАрдХреА рд╕реЗ рдкрд╛рд▓рди рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдХреНрдпрд╛ рд╕рдВрднрд╡ рд╣реИ, рдХреЗ рд▓рд┐рдП рдПрдХ рдбреЗрдЯрд╛ рдмрд┐рдВрджреБ рдХреЗ рд░реВрдк рдореЗрдВ www.bustle.com <1s рдардВрдб рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИ рдХреЗ рд╕рд╛рде рдПрдбрдмреНрд▓реНрдпреВрдПрд╕ рд▓реИрдореНрдмреНрдбрд╛ рдкрд░ рдПрдХ рдПрд╕рдПрд╕рдЖрд░ preact рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╣реИред рд╕рдВрдкреВрд░реНрдг рдкрд░рд┐рдирд┐рдпреЛрдЬрд┐рдд рдЙрддреНрдкрд╛рджрди рдЬрд╝рд┐рдк рдлрд╝рд╛рдЗрд▓ 166kb рд╣реИред рд╡рд╣ рд╕рднреА рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдФрд░ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЛрдб рд╣реИред рд╡реЗрдмрдкреИрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдмрдВрдбрд▓рд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

Next.js 8 рд╕рд░реНрд╡рд░ рд░рд╣рд┐рдд рд▓рдХреНрд╖реНрдп рдХрд╛ рдЬрд╝рд┐рдк рдЖрдХрд╛рд░ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ 42Kb рд╣реИ

рд╡рд╣ рддреЛ рдХрдорд╛рд▓ рд╣реИ! рдЗрд╕рдХрд╛ рдЗрдВрддрдЬрд╝рд╛рд░ рдХрд░ рд░рд╣реЗ рд╣реВрдБ!

рдореЗрд░реЗ рдкрд╛рд╕ @dfoverdx рдЬреИрд╕рд╛ рд╣реА рдкреНрд░рд╢реНрди рд╣реИред рдореИрдВ рдПрдХ рд╕рд░реНрд╡рд░ рдмрдирд╛рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ, рдЬрд┐рд╕рдореЗрдВ рдЪрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╕рднреА рдиреЛрдб_рдореЙрдбреНрдпреВрд▓ рднреА рд╢рд╛рдорд┐рд▓ рд╣реИрдВред рдореИрдВ рдПрдХреНрд╕рдкреНрд░реЗрд╕ рдХреЗ рд╕рд╛рде рдПрдХ рдХрд╕реНрдЯрдо рд╕рд░реНрд╡рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рдЙрди рдирд┐рд░реНрднрд░рддрд╛рдУрдВ рдХреЛ рдкреИрдХреЗрдЬ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдХрд░рдиреЗ рдХреА рдЙрдореНрдореАрдж рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдЕрдм рдЖрдкрдХреЛ рдЕрдкрдиреЗ рд╕рд░реНрд╡рд░ рдкрд░ рднреА _all_ рдирд┐рд░реНрднрд░рддрд╛рдПрдВ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреА рд╣реЛрдВрдЧреА (рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛, рдЕрдЧрд▓рд╛, рдЕрдХреНрд╖, ...)ред

рдореБрдЭреЗ рд╕рдордЭ рдореЗрдВ рдирд╣реАрдВ рдЖрддрд╛ рдХрд┐ рдпрд╣ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдХреИрд╕реЗ рдирд╣реАрдВ рд╣реИ?
рд╕рднреА рдирд┐рд░реНрднрд░рддрд╛рдУрдВ рдХреА рдкреИрдХреЗрдЬрд┐рдВрдЧ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдХрдо рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдиреЗ рд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╕рд░реНрд╡рд░рд╕рд╛рдЗрдб рдкреНрд░рджрд░реНрд╢рди рдореЗрдВ рд╕реБрдзрд╛рд░ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдпрд╛ рдХреНрдпрд╛ рдореИрдВ рдпрд╣рд╛рдВ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЧрд▓рдд рд╣реВрдВ?

рд╡реЗрдмрдкреИрдХ рдХреЙрдиреНтАНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЗ externals рдЕрдиреБрднрд╛рдЧ рдХреЛ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдЕрдзрд┐рд▓реЗрдЦрд┐рдд рдХрд░рдиреЗ рдореЗрдВ рдЕрдзрд┐рдХрд╛рдВрд╢ рдирд┐рд░реНрднрд░рддрд╛рдПрдВ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ

module.exports = {
  webpack: (config, { dev }) => {
    config.externals = [];
    return config;
  })
};

рд▓реЗрдХрд┐рди рд╕рд░реНрд╡рд░ рдкрд░ рдЕрднреА рднреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдФрд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рдбреЛрдо рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рдореИрдВ рдпрд╣ рдирд╣реАрдВ рд╕рдордЭ рд╕рдХрддрд╛ рдХрд┐ рдЙрдирдХреЛ рдХреИрд╕реЗ рд╢рд╛рдорд┐рд▓ рдХрд┐рдпрд╛ рдЬрд╛рдП ...

рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ рд╡рд░реНрддрдорд╛рди рд╕рд░реНрд╡рд░ рд░рд╣рд┐рдд рдореЛрдб рдХреЗ рд╕рд╛рде рдХрд╕реНрдЯрдо рд╕рд░реНрд╡рд░ рдмрдирд╛рдирд╛ рд╕рдВрднрд╡ рдирд╣реАрдВ рд╣реИред рдФрд░ рдпрджрд┐ рдЖрдк рд╕рд╛рдорд╛рдиреНрдп рдореЛрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ рддреЛ рдЖрдкрдХреЛ рдЕрдЧрд▓рд╛ рдФрд░ рдЙрд╕рдХреА рд╕рднреА рдирд┐рд░реНрднрд░рддрд╛рдУрдВ рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ _app.js .next рдореЗрдВ рдЙрддреНрдкрдиреНрди рд╣реЛрддрд╛ рд╣реИ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдЕрдЧрд▓рд╛/рд░рд╛рдЙрдЯрд░ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ

рдЧреИрд░-рд╕рд░реНрд╡рд░ рд░рд╣рд┐рдд рдореЛрдб рднреА рдЕрдЧрд▓рд╛ рдмрдВрдбрд▓ рдХреНрдпреЛрдВ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛?

рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ рд╡рд░реНрддрдорд╛рди рд╕рд░реНрд╡рд░ рд░рд╣рд┐рдд рдореЛрдб рдХреЗ рд╕рд╛рде рдХрд╕реНрдЯрдо рд╕рд░реНрд╡рд░ рдмрдирд╛рдирд╛ рд╕рдВрднрд╡ рдирд╣реАрдВ рд╣реИред рдФрд░ рдпрджрд┐ рдЖрдк рд╕рд╛рдорд╛рдиреНрдп рдореЛрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ рддреЛ рдЖрдкрдХреЛ рдЕрдЧрд▓рд╛ рдФрд░ рдЙрд╕рдХреА рд╕рднреА рдирд┐рд░реНрднрд░рддрд╛рдУрдВ рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ _app.js .next рдореЗрдВ рдЙрддреНрдкрдиреНрди рд╣реЛрддрд╛ рд╣реИ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдЕрдЧрд▓рд╛/рд░рд╛рдЙрдЯрд░ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ

рдзреНрдпрд╛рди рджреЗрдВ, рдХрд┐ рдЕрдЧрд▓реЗ 8 рдХреЗ рдмрд╛рдж рд╕реЗ, рдЖрдкрдХреЛ рдЕрдкрдиреЗ рд╕рд░реНрд╡рд░.рдЬреЗрдПрд╕ рдореЗрдВ 'рдиреЗрдХреНрд╕реНрдЯ' рдХреЗ рдмрдЬрд╛рдп 'рдиреЗрдХреНрд╕реНрдЯ-рд╕рд░реНрд╡рд░' рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИ, рдФрд░ рдРрд╕рд╛ рдХрд░рдиреЗ рд╕реЗ рдЖрдк рд╕реНрдерд╛рдиреАрдп рд╡рд┐рдХрд╛рд╕ рдХреЗ рджреМрд░рд╛рди рдХреЗрд╡рд▓ рд╣реЙрдЯ рд░реАрд▓реЛрдбрд┐рдВрдЧ рдЦреЛ рд░рд╣реЗ рд╣реИрдВред рд╕рд┐рджреНрдзрд╛рдВрдд рд░реВрдк рдореЗрдВ рдпрд╣ рдЖрдкрдХреЛ рдЗрдВрдЯрд░рдореАрдбрд┐рдПрдЯ рд╕рд░реНрд╡рд░ рдкрд░ рд╕реАрдЖрдИ рдмрд┐рд▓реНрдб рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рджреЗрддрд╛ рд╣реИ рдФрд░ рд╡реЗрдмрдкреИрдХ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдирд┐рд░реНрднрд░рддрд╛рдУрдВ рдХреЛ рдЙрддреНрдкрд╛рджрди рдЙрджрд╛рд╣рд░рдгреЛрдВ рдореЗрдВ рдХреЙрдкреА рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рд╣рдордиреЗ рдЕрднреА рддрдХ рдЗрд╕реЗ рдЕрдкрдиреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рдирд╣реАрдВ рдЖрдЬрдорд╛рдпрд╛ рд╣реИред

@ElvenMonky рдПрдХ рд╕рд╛рд▓ рд╕реЗ рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░ рд░рд╣рд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдбреЙрдХреНрд╕ рдпрд╛ рдЙрджрд╛рд╣рд░рдгреЛрдВ рдореЗрдВ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рднреА рдирд╣реАрдВ рдорд┐рд▓рд╛ред

@timneutkens рдХреНрдпрд╛ рдЖрдк рдХреГрдкрдпрд╛ рдЗрд╕реЗ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ?

рдпрджрд┐ рдРрд╕рд╛ рд╣реИ, рддреЛ рдореИрдВ рдЗрд╕ рддрд░рд╣ рдХреЗ рдПрдХ рд╕реЗрдЯрдЕрдк рдХреЗ рд╕рд╛рде рдкреНрд░рдпреЛрдЧ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ, рдФрд░ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реЛрдВ/рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреАрдЖрд░ рднреЗрдЬ рд╕рдХрддрд╛ рд╣реВрдВред

рдзреНрдпрд╛рди рджреЗрдВ, рдХрд┐ рдЕрдЧрд▓реЗ 8 рдХреЗ рдмрд╛рдж рд╕реЗ, рдЖрдкрдХреЛ рдЕрдкрдиреЗ рд╕рд░реНрд╡рд░.рдЬреЗрдПрд╕ рдореЗрдВ 'рдиреЗрдХреНрд╕реНрдЯ' рдХреЗ рдмрдЬрд╛рдп 'рдиреЗрдХреНрд╕реНрдЯ-рд╕рд░реНрд╡рд░' рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИ, рдФрд░ рдРрд╕рд╛ рдХрд░рдиреЗ рд╕реЗ рдЖрдк рд╕реНрдерд╛рдиреАрдп рд╡рд┐рдХрд╛рд╕ рдХреЗ рджреМрд░рд╛рди рдХреЗрд╡рд▓ рд╣реЙрдЯ рд░реАрд▓реЛрдбрд┐рдВрдЧ рдЦреЛ рд░рд╣реЗ рд╣реИрдВред

рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ рдпрд╣ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред

рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рд╕рд░реНрд╡рд░ рд▓рдХреНрд╖реНрдп рдХреЗ рд╕рд╛рде рд╕рд░реНрд╡рд░ рд░рд╣рд┐рдд рдмрд┐рд▓реНрдб рдЪрд▓рд╛рдирд╛ рд╕рдХреНрд░рд┐рдп рд░реВрдк рд╕реЗ рдирд┐рдореНрди рд╕рдВрджреЗрд╢ рдХреЗ рд╕рд╛рде рдЕрд╡рд░реБрджреНрдз рд╣реИ: "рдЬрдм рд▓рдХреНрд╖реНрдп рд╕рд░реНрд╡рд░ рдирд╣реАрдВ рд╣реИ рддреЛ рд╕рд░реНрд╡рд░ рдкреНрд░рд╛рд░рдВрдн рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ред https://err.sh/zeit/next.js/next-start-serverless "

рдлрд┐рд░, рдпрджрд┐ рдЖрдк рд╕рд╛рдорд╛рдиреНрдп рдмрд┐рд▓реНрдб рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓реЗрддреЗ рд╣реИрдВ, рддреЛ рдмрд┐рд▓реНрдб рдлрд╝рд╛рдЗрд▓реЗрдВ рд╕реАрдзреЗ next рдкреИрдХреЗрдЬ рд╕реЗ рдЪреАрдЬреЛрдВ рдХреЛ рд╕рдВрджрд░реНрднрд┐рдд рдХрд░ рд░рд╣реА рд╣реИрдВ (рдЬреИрд╕реЗ рд╕рд░реНрд╡рд░-рд╕рд╛рдЗрдб рдХреЗ рд▓рд┐рдП рд╕рдВрдХрд▓рд┐рдд _app.js рдлрд╝рд╛рдЗрд▓ рдореЗрдВ next/router )ред рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ next рдФрд░ webpack рд╕рд╛рдорд╛рди рдХреЛ рд╡реИрд╕реЗ рднреА рдкреНрд░реЛрдбрдХреНрд╢рди рдмрд┐рд▓реНрдб рдореЗрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред

@ElvenMonky

рдзреНрдпрд╛рди рджреЗрдВ, рдХрд┐ рдЕрдЧрд▓реЗ 8 рдХреЗ рдмрд╛рдж рд╕реЗ, рдЖрдкрдХреЛ рдЕрдкрдиреЗ рд╕рд░реНрд╡рд░.рдЬреЗрдПрд╕ рдореЗрдВ 'рдиреЗрдХреНрд╕реНрдЯ' рдХреЗ рдмрдЬрд╛рдп 'рдиреЗрдХреНрд╕реНрдЯ-рд╕рд░реНрд╡рд░' рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИ, рдФрд░ рдРрд╕рд╛ рдХрд░рдиреЗ рд╕реЗ рдЖрдк рд╕реНрдерд╛рдиреАрдп рд╡рд┐рдХрд╛рд╕ рдХреЗ рджреМрд░рд╛рди рдХреЗрд╡рд▓ рд╣реЙрдЯ рд░реАрд▓реЛрдбрд┐рдВрдЧ рдЦреЛ рд░рд╣реЗ рд╣реИрдВред

рдЕрдЧрд▓рд╛ рд╡рд╣ рдЖрдВрддрд░рд┐рдХ рд░реВрдк рд╕реЗ рдПрдХ рдмреИрдмрд▓ рдкреНрд▓рдЧрдЗрди рдХреЗ рд░реВрдк рдореЗрдВ рдХрд░ рд░рд╣рд╛ рд╣реИ рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рдпрд╣рд╛рдВ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ:
https://github.com/zeit/next.js/blob/709850154754278d2fc86b987eebe1b3f0565255/packages/next/build/babel/plugins/commonjs.ts#L5 -L32

@sheerun рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВрдиреЗ #7011 рдореЗрдВ рднреА рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рд╣реИ, рдЖрдк next-transpile-modules рдкреНрд▓рдЧрдЗрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ next рдореЙрдбреНрдпреВрд▓ рдХреЛ рдЯреНрд░рд╛рдВрд╕рдкрд┐рд▓ рдХрд░рдХреЗ рдЕрдирд╕реБрд▓рдЭреЗ next/router рдирд┐рд░реНрднрд░рддрд╛ рдХреЛ рд╕рдорд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдореИрдВрдиреЗ рд╕рдорд╛рдзрд╛рди рдХреЛ рд╕реНрдкрд╖реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╕реНрдЯрдо рдПрдХреНрд╕рдкреНрд░реЗрд╕ рд╕рд░реНрд╡рд░ рдХреЗ рд▓рд┐рдП рдЙрджрд╛рд╣рд░рдг рджрд┐рдпрд╛ рд╣реИ рдФрд░ рд╕рдорд╛рдпреЛрдЬрд┐рдд рдХрд┐рдпрд╛ рд╣реИ: https://github.com/ElvenMonky/next.js/tree/custom-next-server-express/examples/custom-server-express

рдкреАрдПрд╕: рдореИрдВ рдЕрднреА рднреА # 5927 рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЙрддреНрд╕рд╛рд╣рд┐рдд рд╣реВрдВ, рдЗрд╕рд╕реЗ рдХреЛрдИ рдлрд░реНрдХ рдирд╣реАрдВ рдкрдбрд╝рддрд╛ рдХрд┐ рдореЗрд░реЗ рдЖрд╡реЗрджрди рдХреЛ TODO рдореЗрдВ рд╕реВрдЪреАрдмрджреНрдз рд╕рдм рдХреБрдЫ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рди рдХрд┐ рдЧрддрд┐рд╢реАрд▓ рдорд╛рд░реНрдЧреЛрдВ рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд░рдиреЗ рдФрд░ рд╕реНрдерд┐рд░ рд╕рд╛рдордЧреНрд░реА рдХреА рд╕реЗрд╡рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред
рдЕрдЪреНрдЫреА рдЦрдмрд░ рдпрд╣ рд╣реИ рдХрд┐ рдЙрдкрд░реЛрдХреНрдд рд╕рдорд╛рдзрд╛рди https://www.npmjs.com/package/next-serverless рдХрд╕реНрдЯрдо рд╕рд░реНрд╡рд░ рд╕реЗрдЯрдЕрдк рдХреЗ рд╕рд╛рде рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдЪрд▓рддрд╛ рдкреНрд░рддреАрдд рд╣реЛрддрд╛ рд╣реИ, рдЬрд┐рд╕рд╕реЗ рдЙрдкрд░реЛрдХреНрдд рд╕реАрдорд╛рдУрдВ рдХреЗ рдмрд┐рдирд╛ рдПрдбрдмреНрд▓реНрдпреВрдПрд╕ рд▓реИрдореНрдмреНрдбрд╛ рдЬреИрд╕реЗ рдЕрдЧрд▓реЗ рдХреЛ рддреИрдирд╛рдд рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред

рдзреНрдпрд╛рди рджреЗрдВ, рдХрд┐ рдЕрдЧрд▓реЗ 8 рдХреЗ рдмрд╛рдж рд╕реЗ, рдЖрдкрдХреЛ рдЕрдкрдиреЗ рд╕рд░реНрд╡рд░.рдЬреЗрдПрд╕ рдореЗрдВ 'рдиреЗрдХреНрд╕реНрдЯ' рдХреЗ рдмрдЬрд╛рдп 'рдиреЗрдХреНрд╕реНрдЯ-рд╕рд░реНрд╡рд░' рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИ, рдФрд░ рдРрд╕рд╛ рдХрд░рдиреЗ рд╕реЗ рдЖрдк рд╕реНрдерд╛рдиреАрдп рд╡рд┐рдХрд╛рд╕ рдХреЗ рджреМрд░рд╛рди рдХреЗрд╡рд▓ рд╣реЙрдЯ рд░реАрд▓реЛрдбрд┐рдВрдЧ рдЦреЛ рд░рд╣реЗ рд╣реИрдВред

рдореИрдВ рдЗрд╕ рд╕рд▓рд╛рд╣ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ рд░рдирдЯрд╛рдЗрдо рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕рдХреЗ рд▓рд┐рдП next/config рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП next рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред

рдореБрдЭреЗ рдкрддрд╛ рдирд╣реАрдВ рдХреНрдпреЛрдВ рд▓реЗрдХрд┐рди require('next/config') рдмрд┐рдирд╛ next рдЙрддреНрдкрд╛рджрди рдореЗрдВ рдХрд╛рдо рдХрд░рддрд╛ рдерд╛, рдЕрдЧрд▓реЗ рд╕рдВрд╕реНрдХрд░рдг 8.0.3 рдХреЗ рд╕рд╛рде рдиреЛрдб_рдореЙрдбреНрдпреВрд▓ рдореЗрдВ рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рд▓реЗрдХрд┐рди рдЕрдЧрд▓реЗ рд╕рдВрд╕реНрдХрд░рдг 8.1.0 рдореЗрдВ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ

рдХреНрдпрд╛ рдЕрдЧрд▓реЗ/рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЛ рдХрд┐рд╕реА рднрд┐рдиреНрди рдкреИрдХреЗрдЬ рдореЗрдВ рд▓реЗ рдЬрд╛рдирд╛ рд╕рдВрднрд╡ рд╣реИ, рдЬреИрд╕реЗ next-runtime-config ?
рдпрд╛ next-runtime-vars (рдЕрдЧрд▓реЗ.config.js рдХреЗ рд╕рд╛рде рднреНрд░рдо рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд╢рдмреНрдж рд╕реЗ рдмрдЪрдирд╛)ред

рдореБрдЭреЗ рдмрддрд╛рдПрдВ рдХрд┐ рдЕрдЧрд░ рд╕реНрд╡реАрдХрд╛рд░реНрдп рд╣реИ, рддреЛ рдореИрдВ рдПрдХ рдкреАрдЖрд░ рдмрдирд╛рдКрдВрдЧрд╛ред

рдЬрд╝рд░рд╛ рд╕реБрдирд┐рдП рд╕рднреА! рдпрд╣ рд╕рдорд╕реНрдпрд╛ Next.js 8 рд╕реЗ рд▓рд╛рдЧреВ рдХреА рдЧрдИ рд╣реИ, рдФрд░ рдЕрднреА рднреА Next.js 9 рдореЗрдВ рд╣реИред рдореИрдВ рдЗрд╕реЗ рдкреВрд░реНрдг рд╣реЛрдиреЗ рдкрд░ рдмрдВрдж рдХрд░рдиреЗ рдЬрд╛ рд░рд╣рд╛ рд╣реВрдВред рдореИрдВ

рдХреНрд╖рдорд╛ рдХрд░реЗрдВ, рдореИрдВ рдЗрд╕ рдореБрджреНрджреЗ рд╕реЗ рднреНрд░рдорд┐рдд рд╣реЛ рдЧрдпрд╛: https://github.com/zeit/next.js/issues/7011
рдореИрдВрдиреЗ рд▓рдХреНрд╖реНрдп рдХреЗ рд╕рд╛рде рдЬрд╛рдБрдЪ рдирд╣реАрдВ рдХреА рд╣реИ: "рд╕рд░реНрд╡рд░ рд░рд╣рд┐рдд"


рд╣рдЯрд╛рдИ рдЧрдИ рдЯрд┐рдкреНрдкрдгреА рджреЗрдЦреЗрдВ

рдХреБрдЫ "next/*" рдХреЛ "next-server/*" рдмрджрд▓рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЬреИрд╕реЗ:

  • рдЕрдЧрд▓рд╛/рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди -> рдЕрдЧрд▓рд╛-рд╕рд░реНрд╡рд░/рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди
  • рдЕрдЧрд▓рд╛/amp -> рдЕрдЧрд▓рд╛ рд╕рд░реНрд╡рд░/amp
  • рдЕрдЧрд▓рд╛/рдЧрддрд┐рд╢реАрд▓ -> рдЕрдЧрд▓рд╛-рд╕рд░реНрд╡рд░/рдЧрддрд┐рд╢реАрд▓
  • рдЕрдЧрд▓рд╛/рд╕реНрдерд┐рд░рд╛рдВрдХ -> рдЕрдЧрд▓рд╛ рд╕рд░реНрд╡рд░/рд╕реНрдерд┐рд░рд╛рдВрдХ
  • рдЕрдЧрд▓рд╛/рд╕рд┐рд░ -> рдЕрдЧрд▓рд╛-рд╕рд░реНрд╡рд░/рд╕рд┐рд░

рд▓реЗрдХрд┐рди рдХреБрдЫ рдРрд╕реЗ рд╣реИрдВ рдЬрд┐рдирдХреЗ рд▓рд┐рдП рдЗрд╕ рдореБрджреНрджреЗ рдХреЗ рдУрдкреА рджреНрд╡рд╛рд░рд╛ рдЙрд▓реНрд▓рд┐рдЦрд┐рдд рдЗрд╕ рддрд░рд╣ рдХреЗ рдЕрдиреБрдХреВрд▓рди рдХреЗ рд▓рд┐рдП рдХреЛрдИ рд╕рдорд░реНрдерди рдирд╣реАрдВ рд╣реИред

  • рдЕрдЧрд▓рд╛/рд░рд╛рдЙрдЯрд░ -> рдЕрдЧрд▓рд╛-рд╕рд░реНрд╡рд░/рдЬрд┐рд▓рд╛/lib/рд░рд╛рдЙрдЯрд░/рд░рд╛рдЙрдЯрд░ (рд╢рд╛рдпрдж)? (рдЦрд╛рд▓реА рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдпрд╛ рд╕рд░реНрд╡рд░ рдкрд░ рдЗрд╕реНрддреЗрдорд╛рд▓ рд╣реЛрдиреЗ рдкрд░ рддреНрд░реБрдЯрд┐ рдлреЗрдВрдХрдиреА рдЪрд╛рд╣рд┐рдП)
  • рдЕрдЧрд▓рд╛/рд▓рд┐рдВрдХ?

рдЬрд░реВрд░рдд рдирд╣реАрдВ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рд╕рд░реНрд╡рд░ рдореЗрдВ рднреА рдЗрдирд▓рд╛рдЗрди рд╣реИрдВ (AKAIK)

  • рдЕрдЧрд▓рд╛/рдПрдкреНрд▓рд┐рдХреЗрд╢рди
  • рдЕрдЧрд▓рд╛/рджрд╕реНрддрд╛рд╡реЗрдЬрд╝

рдЬрд╝рд░рд╛ рд╕реБрдирд┐рдП рд╕рднреА! рдпрд╣ рд╕рдорд╕реНрдпрд╛ Next.js 8 рд╕реЗ рд▓рд╛рдЧреВ рдХреА рдЧрдИ рд╣реИ, рдФрд░ рдЕрднреА рднреА Next.js 9 рдореЗрдВ рд╣реИред рдореИрдВ рдЗрд╕реЗ рдкреВрд░реНрдг рд╣реЛрдиреЗ рдкрд░ рдмрдВрдж рдХрд░рдиреЗ рдЬрд╛ рд░рд╣рд╛ рд╣реВрдВред

рд╣рд╛рдп @ рдЯрд╛рдЗрдорд░ - рдХреНрдпрд╛ рдЖрдк рд╕рд░реНрд╡ рд░рд╣рд┐рдд рд▓рдХреНрд╖реНрдп рдХрд╛ рдЬрд┐рдХреНрд░ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рдпрд╛ 'рдЕрдЧрд▓рд╛' рдХреЛ 'рдЕрдЧрд▓рд╛-рд╕рд░реНрд╡рд░' рд╕реЗ рдмрджрд▓ рд░рд╣реЗ рд╣реИрдВ?

рдЕрдЧрд░ рд╣рдо рдиреЗрдХреНрд╕реНрдЯ рдХреЛ рдиреЗрдХреНрд╕реНрдЯ рд╕рд░реНрд╡рд░ рд╕реЗ рд░рд┐рдкреНрд▓реЗрд╕ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рдиреЛрдб_рдореЙрдбреНрдпреВрд▓реНрд╕ рдлреЛрд▓реНрдбрд░ рд╕рд╛рдЗрдЬ рдХреЛ рддрдм рддрдХ рдирд╣реАрдВ рдмрджрд▓рддрд╛ рд╣реИ рдЬрдм рддрдХ рдХрд┐ package.json рдбрд┐рдкреЗрдВрдбреЗрдВрд╕реАрдЬ рдХреЛ рднреА рдЕрдкрдбреЗрдЯ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдХреНрдпрд╛ рдХрд┐рд╕реА рднреА рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХрд╛ рдЙрджрд╛рд╣рд░рдг рдЙрдкрд▓рдмреНрдз рд╣реИ? рд╕рд░реНрд╡рд░ рд░рд╣рд┐рдд рдХреЗ рд╕рд╛рде, рдореЗрд░рд╛ рдЙрдкрдпреЛрдЧ рдорд╛рдорд▓рд╛ рдПрдбрдмреНрд▓реНрдпреВрдПрд╕ рд▓реИрдореНрдмреНрдбрд╛ рдкрд░ рддреИрдирд╛рдд рд╣реИред

рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдЕрдВрдХ рдореЗрдВ рдЙрд▓реНрд▓рд┐рдЦрд┐рдд рджреГрд╖реНрдЯрд┐рдХреЛрдг serverless рд▓рдХреНрд╖реНрдп рдореЗрдВ рд╡рд┐рдХрд╕рд┐рдд рд╣реБрдЖ, рд╣рдо рдЕрдиреБрд╢рдВрд╕рд╛ рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рдЖрдк рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред

@timneutkens serverless рд▓рдХреНрд╖реНрдп рдХрд╕реНрдЯрдо рд╕рд░реНрд╡рд░ рдХреЗ рд╕рд╛рде рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рд╣рд▓ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рди рд╣реА рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рдЬреЛ рдЧрддрд┐рд╢реАрд▓ рдорд╛рд░реНрдЧреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред #5927 рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдмрд╣реБрдд рд╕рд╛рд░реЗ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╡рд┐рд╢реНрд╡ рд╡реНрдпрд╛рдкрд╛рд░ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХрд╛ рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рд╣реИ, рдЬрд╣рд╛рдВ рд╣рдореЗрдВ рдЧрддрд┐рд╢реАрд▓ рд░реВрдк рд╕реЗ рдЬреЗрдирд░реЗрдЯ рдХрд┐рдП рдЧрдП рдкреГрд╖реНрдареЛрдВ, рд╕рдВрдкрддреНрддрд┐ рдЙрдкрд╕рд░реНрдЧ, рдХрд╕реНрдЯрдо _рдПрдк, _рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдФрд░ _err рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реИ: рдореВрд▓ рд░реВрдк рд╕реЗ TODO рд╕реВрдЪреА рдореЗрдВ рдЬреЛ рдХреБрдЫ рднреА рдХрд╣рд╛ рдЧрдпрд╛ рд╣реИред
next-server рд╣рдореЗрдВ рдХреЗрд╡рд▓ рд╡реЗрдмрдкреИрдХ рдФрд░ рдмреЗрдмреЗрд▓ рдЬреИрд╕реА рдирд┐рд░реНрднрд░рддрд╛ рдХреЗ рдмрд┐рдирд╛ рдЕрдЬреАрдм рд╡рд┐рдХрд╛рд╕ рдХреЗ рдмрд┐рдирд╛ рдЙрддреНрдкрд╛рджрди рдореЗрдВ рддреИрдирд╛рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдВрд╢рд┐рдХ рд╕рдорд╛рдзрд╛рди рджреЗрддрд╛ рд╣реИред рд╣рд╛рд▓рд╛рдБрдХрд┐ рдпрд╣ рдХреБрдЫ рд╣реИрдХреНрд╕ рдФрд░ рд╡реБрдбреВ рдбрд╛рдВрд╕рд┐рдВрдЧ рдХреЗ рд╕рд╛рде рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЬрд┐рд╕рдХреА рдЪрд░реНрдЪрд╛ рд╣рдо рдпрд╣рд╛рдБ рдХрд░ рд░рд╣реЗ рд╣реИрдВред

рдореИрдВ рдЗрд╕ рдзрд╛рд░рдгрд╛ рдореЗрдВ рдерд╛ рдХрд┐ рдЖрдк рдЗрд╕ рдЕрдВрддрд░ рдХреЛ рд╕рдордЭрддреЗ рд╣реИрдВ рдФрд░ рдХрд┐рд╕реА рджрд┐рди рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдореБрджреНрджреЗ рдХреЗ рд▓рд┐рдП рдФрд░ рдЕрдзрд┐рдХ рдордЬрдмреВрдд рд╕рдорд╛рдзрд╛рди рджреЗрдЦрдиреЗ рдХреА рдЙрдореНрдореАрдж рдХрд░ рд░рд╣реЗ рдереЗ рдЬреИрд╕рд╛ рдХрд┐ @rauchg рджреНрд╡рд╛рд░рд╛ рд╡рд░реНрдгрд┐рдд рд╣реИ

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

rauchg picture rauchg  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

YarivGilad picture YarivGilad  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

DvirSh picture DvirSh  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

kenji4569 picture kenji4569  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

ghost picture ghost  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ