<p>рдХреНрд╖рдгреЛрдВ рдХреЗ рд╕рд╛рде: "./locale" рдирд╣реАрдВ рдорд┐рд▓рд╛</p>

рдХреЛ рдирд┐рд░реНрдорд┐рдд 22 рдлрд╝рд░ре░ 2016  ┬╖  48рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: moment/moment

рд╡реЗрдмрдкреИрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп рдореБрдЭреЗ рдпрд╣ рдЪреЗрддрд╛рд╡рдиреА рдорд┐рд▓ рд░рд╣реА рд╣реИ:

WARNING in ./~/moment/min/moment-with-locales.js
Module not found: Error: Cannot resolve 'file' or 'directory' ./locale in \node_modules\moment\min
@ ./~/moment/min/moment-with-locales.js 271:16-43

рдХреЛрдИ рд╕реБрд░рд╛рдЧ?

Discussion Documentation Help Wanted

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

рдореИрдВрдиреЗ рдЕрдЪреНрдЫреЗ рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЗ рд╕рд╛рде рдЕрдирджреЗрдЦрд╛ рдореЙрдбреНрдпреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ред рдпрд╣ рдХрд┐рд╕реА рдХреА рдорджрдж рдХрд░ рд╕рдХрддрд╛ рд╣реИ:

    // /app/js/webpack.config.js
    plugins: [

        // Fixes warning in moment-with-locales.min.js 
        //   Module not found: Error: Can't resolve './locale' in ...
        new webpack.IgnorePlugin(/\.\/locale$/)
    ]

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

# 1435 рджреЗрдЦреЗрдВред рдЕрдВрдд рдореЗрдВ рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдбред рдзрдиреНрдпрд╡рд╛рджред

рд╡реЗрдмрдкреИрдХ .config.js рдХреЗ "рдкреНрд▓рдЧрдЗрдиреНрд╕" рдореЗрдВ рд╕реБрдЭрд╛рдП рдЧрдП рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб

new webpack.ContextReplacementPlugin(/moment[\\\/]locale$/, /^\.\/(en|de|cz|eu)$/)

рдХрд╛рдо рдирд╣реАрдВ рдХрд┐рдпрд╛

рдКрдкрд░ рдмрддрд╛рдИ рдЧрдИ рд╕рдорд╕реНрдпрд╛ рд▓рдЧрднрдЧ require('./locale' + name) рд╕реНрдЯреЗрдЯрдореЗрдВрдЯ рдореЗрдВ рдлрд╝рд╛рдЗрд▓ рдорд┐рди / рдкрд▓-рд╕рд╛рде-loc.js рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реИред рдпрд╣ рдЕрдм рдЖрд╡рд╢реНрдпрдХ рдирд╣реАрдВ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд╕рднреА рд╕реНрдерд╛рди рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЗрд╕ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реИрдВред

рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ рд╡реЗрдмрдкреИрдХ рд╕рднреА рдХреЛ рдХрдерди рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддрд╛ рд╣реИ - рдЗрд╕рд▓рд┐рдП рдпрд╣ рдЪреЗрддрд╛рд╡рдиреАред

@ichernev - рдореИрдВ @mheimschild рдЙрдЪрд┐рдд рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЗрд╕реЗ рд╕рдВрднрд╛рд▓рдирд╛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдирд╣реАрдВ рд╣реИред

рд╡реЗрдмрдкреИрдХ рдХреЛ рд╕рдордЭрд╛рдиреЗ рдХрд╛ рд╕рдмрд╕реЗ рд╕рд░рд▓ рдЙрдкрд╛рдп рдХрд┐ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдкрд▓-рдкрд▓-рд╕реНрдерд╛рдиреЛрдВ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╕реНрдерд╛рдиреЛрдВ рдХреА рддрд▓рд╛рд╢ рди рдХрд░реЗрдВред рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рдЙрд╕реЗ рдХреБрдЫ рдФрд░ рд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рдХрд░рдирд╛ рд╣реИред рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдП рдХрд╛рдо рдХрд┐рдпрд╛:

рдЦрд╛рд▓реА рдореЙрдбреНрдпреВрд▓ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ (рдЗрд╕рдореЗрдВ рд╕рд╛рд╣рд┐рддреНрдпрд┐рдХ рдХреБрдЫ рднреА рдирд╣реАрдВ рд╣реИ)
npm install --save-dev empty-module
рдФрд░ рдлрд┐рд░ ContextReplacementPlugin рдХреЛ рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВ
new webpack.ContextReplacementPlugin(/\.\/locale$/, 'empty-module', false, /js$/)

рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдпрд╣ рдорджрдж рдХрд░рддрд╛ рд╣реИред

рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб @mheimschild рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж - рдпрд╣ рдЕрдЪреНрдЫрд╛ рд╣реЛрддрд╛ рдХрд┐ рдпрд╣

рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ empty-module рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рдмрд╕ рдЗрд╕реЗ рд╢реВрдиреНрдп рдореЗрдВ рдмрджрд▓ рджреЗрдВ, рдпрд╣ рдЕрднреА рднреА ContextReplacementPlugin рдореЗрдВ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ

new webpack.ContextReplacementPlugin(/\.\/locale$/, null, false, /js$/)

npm рдорд╛рдзреНрдпрдо рд╕реЗ рдХреНрд╖рдгрд┐рдХрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп рдмрд╕ рдЗрд╕реА рддрд░рд╣ рдХреА рд╕рдорд╕реНрдпрд╛ рдереА
рдореИрдВрдиреЗ рдкрд╛рдпрд╛ рдХрд┐ locales.js рдпрд╣ ./locale/ рдХреЛ рд╕рдВрджрд░реНрднрд┐рдд рдХрд░рддрд╛ рд╣реИ
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рднрд╛рд╖рд╛ рд╕реНрдерд╛рдиреАрдпрдХрд░рдг рдЦреЛрдЬрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣реА рд▓рд╛рдЗрдиред CMIIW

рдЗрд╕ рдмреАрдЪ рд╕реНрдерд╛рдиреАрдп рдлрд╛рдЗрд▓реЗрдВ ../../locale/ locale.js
рдЙрд╕ рд▓рд╛рдЗрди рдХреЛ require ('../../locale/' + name); рдореЗрдВ рдмрджрд▓рдХрд░ рдореИрдВрдиреЗ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рд╕реБрд▓рдЭрд╛ рд▓рд┐рдпрд╛ рд▓реЗрдХрд┐рди рдореИрдВ node_modules рд╕реАрдзреЗ рдЕрдкрдиреЗ рд╕рд░реНрд╡рд░ рдкрд░ рдкрд╕рдВрдж рдирд╣реАрдВ рдХрд░ рд╕рдХрд╛

рдКрдкрд░ рдмрддрд╛рдП рдЧрдП рд╡реЗрдмрдкреИрдХ рддрд░реАрдХреЗ рдХреЛ рдЖрдЬрдорд╛рдПрдВрдЧреЗ

рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ: рдореИрдВ рдЗрд╕реЗ рд╡рд┐рдВрдбреЛрдЬрд╝ рдкрд░ рдЪрд▓рд╛ рд░рд╣рд╛ рдерд╛, рдпрд╣ рдкрде рдХреА рд╕рдорд╕реНрдпрд╛ рдЬреИрд╕рд╛ рджрд┐рдЦрддрд╛ рд╣реИред рдореИрдВрдиреЗ рд▓рд╛рдЗрдирдХреНрд╕ рдкрд░ рдХреНрд╖рдг рдЪрд▓рд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рдФрд░ рдпрд╣ рдареАрдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ

рдореИрдВрдиреЗ рдЕрдЪреНрдЫреЗ рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЗ рд╕рд╛рде рдЕрдирджреЗрдЦрд╛ рдореЙрдбреНрдпреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ред рдпрд╣ рдХрд┐рд╕реА рдХреА рдорджрдж рдХрд░ рд╕рдХрддрд╛ рд╣реИ:

    // /app/js/webpack.config.js
    plugins: [

        // Fixes warning in moment-with-locales.min.js 
        //   Module not found: Error: Can't resolve './locale' in ...
        new webpack.IgnorePlugin(/\.\/locale$/)
    ]

@miguelrincon рдареАрдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ!

рдмрд╣реБрдд рдмрдврд╝рд┐рдпрд╛ред рдпрд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИрдВ!

@miguelrincon рдпрд╛ рд╕рдорд╛рди - рдХреНрдпрд╛ рд╣рдо рдЙрд╕рдХреЗ рд▓рд┐рдП рдбреЙрдХреНрд╕ рдкрд░ рдПрдХ рдкреБрд▓ рдЕрдиреБрд░реЛрдз рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ? рдпрд╣ рд╡реЗрдмрдкреИрдХ рдХреЗ рддрд╣рдд рдЙрдкрдпреЛрдЧ рдЕрдиреБрднрд╛рдЧ рдореЗрдВ рд╣реЛрдЧрд╛ред

рд╣рд╛рдЗрдмреНрд░рд┐рдб рдРрдк Ionic 3.5 рдХреЛ Angular 4 рдХреЗ рд╕рд╛рде рдХреИрд╕реЗ рдареАрдХ рдХрд░реЗрдВ рдЬрд╣рд╛рдВ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХреЛрдИ webpack.config рдлрд╝рд╛рдЗрд▓ рдирд╣реАрдВ рд╣реИ?

рдореИрдВрдиреЗ рдКрдкрд░ @miguelrincon рд╕реБрдЭрд╛рд╡ рджреЗрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА, рд▓реЗрдХрд┐рди рдпрд╣ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред
рдпрд╛рдиреА рдпрд╣ рдирд┐рд░реНрдорд╛рдг рдХреЗ рджреМрд░рд╛рди рддреНрд░реБрдЯрд┐ рдХреЛ рдирд╣реАрдВ рдлреЗрдВрдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЙрд╕реА рддреНрд░реБрдЯрд┐ рдХреЛ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХрдВрд╕реЛрд▓ рд▓реЙрдЧ рдореЗрдВ рдлреЗрдВрдХ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдЪрд╛рд░реЛрдВ рдУрд░ рджреЗрдЦрдиреЗ рдХреЗ рдмрд╛рдж, рдореИрдВрдиреЗ рдпрд╣ рдкрд╛рдпрд╛ рдФрд░ рдпрд╣ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ!

https://github.com/afc163/react-boilerplate/commit/61ec8a19df0fcb56d407b795cb6c87141e0e14a7

\\ webpack.js

resolve: {
   ....
   alias: {
      moment$: 'moment/moment.js',
   },
   ...
}

рдпрд╣ рд╕рдорд╕реНрдпрд╛ рдореЗрд░реЗ рд▓рд┐рдП рдХреНрд╖рдг рдореЗрдВ рджрд┐рдЦрд╛рдИ рджреА рд╣реИред js 2.19.0ред рдпрджрд┐ рдЖрдкрдХреЛ рдЕрдкрдиреЗ рдЖрд╡реЗрджрди рдХреЛ рдЕрднреА рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рддреЛ рдПрдХ рд░реЛрд▓рдмреИрдХ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП:

npm рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ 2.18.0 - рд╕реЗрдХ

рдзрдиреНрдпрд╡рд╛рдж @ jeff3dx рдЗрд╕рдиреЗ рдореЗрд░рд╛ рдореБрджреНрджрд╛ рддрдп рдХрд░ рджрд┐рдпрд╛!

@ jeff3dx рдореИрдВ рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд╕рд╛рде рдареАрдХ рд╡реИрд╕рд╛ рд╣реА рд╣реЛ рд░рд╣рд╛ рдерд╛, рд▓реЗрдХрд┐рди @ M1chaelTran рджреНрд╡рд╛рд░рд╛ рд╕реБрдЭрд╛рдП рдЧрдП рд╕рдВрдХрд▓реНрдк рдЙрд░реНрдл тАЛтАЛрдХреЛ рдЬреЛрдбрд╝рдХрд░ рдЕрднреА рднреА рдЪрд╛рд▓ рдЪрд▓ рд░рд╣рд╛ рд╣реИред

рдореИрдВ рдкреБрд╖реНрдЯрд┐ рдХрд░рддрд╛ рд╣реВрдВ рдХрд┐ 2.18 рдкрд░ рдЪрд┐рдкрдХреЗ рд░рд╣рдирд╛ рд╕рдорд╕реНрдпрд╛ рдХреЛ рддреБрд░рдВрдд рдареАрдХ рдХрд░рддрд╛ рд╣реИред

рдореБрдЭреЗ рднреАред рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ 16 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░, рд╕рдВрд╕реНрдерд╛рдкрд┐рдд рдкрд▓ 2.19 рдФрд░ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЛ рдорд┐рд▓рд╛ред 2.18 рдкрд░ рд╡рд╛рдкрд╕ рд▓реМрдЯрд╛, рдХреЛрдИ рддреНрд░реБрдЯрд┐ рдирд╣реАрдВред

рдкреНрд░рд┐рдп, рдореИрдВ рдЗрд╕реЗ рд╣рд▓!
src / lib / locale / loc.js рдХреЛ рд▓рд╛рдЗрди 61 рдореЗрдВ,
61 рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ ('./ рд▓реЛрдХреЗрд▓ /' + рдирд╛рдо);
рдкрд░рд┐рд╡рд░реНрддрди рд╣реЛрдирд╛:
61 рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ ('./' + рдирд╛рдо);
"рд╕реНрдерд╛рдиреЛрдВ рдХреЗ рд╕рд╛рде рдХреНрд╖рдг:" ./locale "рдирд╣реАрдВ рдорд┐рд▓рд╛" рд╣рд▓ рд╣реЛ рдЬрд╛рдПрдЧрд╛ред

@ wushuang5112 рдЖрдк рдПрдХ рдиреЛрдб_рдореЙрдбрд▓ рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ, рдЗрд╕рд▓рд┐рдП рдЖрдкрдХреЗ рд╕рдорд╛рдзрд╛рди рдХреЗ рд▓рд┐рдП рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдореЗрдВ рдкрд▓ рдЬреЛрдбрд╝рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реЛрдЧрд╛, рдЬреЛ рдЕрдЪреНрдЫрд╛ рдирд╣реАрдВ рд╣реИ

рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдФрд░ рд╡реЗрдмрдкреИрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП рдРрдк рдореЗрдВ рдкрд▓ 2.19 рдкрд░ рдЕрдкрдЧреНрд░реЗрдб рдХрд░рддреЗ рд╕рдордп рд╣рдореЗрдВ рд╕рд┐рд░реНрдл рдПрдХ рд╕рдорд╕реНрдпрд╛ рдереАред 2.18 рдкрд░ рд▓реМрдЯрдХрд░ рдЗрд╕реЗ рдареАрдХ рдХрд┐рдпрд╛ред

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

рд╣рд▓ рдХрд┐рдпрд╛! ... v2.19.1

@ M1chaelTran рдЖрдк рдПрдХ рдЖрд╢реАрд░реНрд╡рд╛рдж рд╣реИрдВ, рдмрд╣реБрдд рдмрд╣реБрдд рдзрдиреНрдпрд╡рд╛рдж !!!

рдореИрдВ рдЕрднреА рднреА v2.19.1 рдореЗрдВ рдореБрджреНрджреЗ рдХреЛ рджреЗрдЦ рд░рд╣рд╛ рд╣реВрдВ

WARNING in ./~/moment/src/lib/locale/locales.js
Module not found: Error: Can't resolve './locale' in '/project/node_modules/moment/src/lib/locale'
 @ ./~/moment/src/lib/locale/locales.js 56:12-46
 @ ./~/moment/src/lib/locale/locale.js
 @ ./~/moment/src/moment.js
 @ dll reactBoilerplateDeps

рд╣рд╛рд▓рд╛рдБрдХрд┐, @ M1chaelTran рдЙрд░реНрдл рдЪрд╛рд▓ рдиреЗ рдореЗрд░реЗ рд▓рд┐рдП рдХрд╛рдо рдХрд┐рдпрд╛ред

@electrobabe рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ ... рдбреЙрдХреНрдЯрд░ рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдкреБрд░рд╛рдирд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП...

рдЗрд╕реЗ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП: Can't resolve './locale' in , moment рдФрд░ min/locales рдЖрдпрд╛рдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВ рдмрдЬрд╛рдп moment-with-locales ред рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдП рддрдп рд╣реИ!

рдЗрд╕рдХреЗ рд▓рд┐рдП рдмреЗрд╣рддрд░ рд╕рдВрджрд░реНрдн рд╣реИ:
http://momentjs.com/docs/#/i18n/loading -into-browser /

2.18 рдореЗрдВ рдЕрдкрдЧреНрд░реЗрдб рдХрд░рдирд╛ рдореЗрд░реЗ рд▓рд┐рдП рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рд╣реИред рдЕрднреА рднреА рдпрд╣ рд╣реИ: рддреНрд░реБрдЯрд┐: рдореЙрдбреНрдпреВрд▓ рдирд╣реАрдВ рдвреВрдБрдв рд╕рдХрддрд╛ рд╣реИ "./ocale"

рдЕрдЬреАрдм рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рдЗрд╕реЗ рдареАрдХ рдХрд░рдирд╛ рд╣реИ:

  • рдореЗрд░реЗ react-native рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рдореБрдЭреЗ moment-with-locales рдлрд╝рд╛рдЗрд▓ рдЖрдпрд╛рдд рдХрд░рдиреА рд╣реЛрдЧреА
  • рдореЗрд░реЗ reactjs рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рдореБрдЭреЗ рдЕрднреА moment/locales рдлрд╝рд╛рдЗрд▓ рдЖрдпрд╛рдд рдХрд░рдиреА рд╣реИ

@manelephant рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рддрд╛ рд╣реИ: https://github.com/moment/moment/issues/2979#issuecomment -346636284

2.18 рдореЗрдВ рдЕрдкрдЧреНрд░реЗрдб рдХрд░рдирд╛ рдореЗрд░реЗ рд▓рд┐рдП рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рд╣реИред

рдореИрдВ рдХреЛрдгреАрдп рдХреНрд▓реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВред
рдкрд▓ рдХрд╛рдо рдХрд┐рдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЬрдм рдореИрдВ npm рд░рди packagr ==> рдХреЗ рд╕рд╛рде рдЕрдкрдиреЗ рдШрдЯрдХ рдирд┐рд░реНрдпрд╛рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ

FESM15 рдХреЗ рд▓рд┐рдП рд╕рдВрдХрд▓рди
_ locale тАЩ_ node_modulesmoment \ srcmoment.jsтАЩ рджреНрд╡рд╛рд░рд╛ рдирд┐рд░реНрдпрд╛рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ

рднрд╡рди рддреНрд░реБрдЯрд┐
рдПрдХ рдирд╛рдо рд╕реНрдерд╛рди ('рдХреНрд╖рдг') рдирд╣реАрдВ рдХрд╣ рд╕рдХрддреЗ
рддреНрд░реБрдЯрд┐: рдПрдХ рдирд╛рдо рд╕реНрдерд╛рди ('рдХреНрд╖рдг') рдирд╣реАрдВ рдХрд╣ рд╕рдХрддрд╛

рдХреЛрдИ рдореЗрд░реА рдорджрдж рдХрд░ рд╕рдХрддрд╛ рд╣реИ?

рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕ рдзрд╛рдЧреЗ рдореЗрдВ рдмрд╣реБрдд рдЙрдкрдпреЛрдЧреА рд╕рд▓рд╛рд╣ рд╣реИред рд╣рдо рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рд╣рдорд╛рд░реЗ рдбреЙрдХреНрд╕ рдкрд░ рдХреБрдЫ рдкреАрдЖрд░ рд▓реЗрдирд╛ рдкрд╕рдВрдж рдХрд░реЗрдВрдЧреЗ! https://github.com/moment/momentjs.com

рд╕рднреА рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред

рдЕрджреНрдпрддрди: рдореБрдЭреЗ рдПрдХ рд╕рдорд╛рдзрд╛рди рдорд┐рд▓рд╛ред

рдЖрдпрд╛рдд рдХрд░рдиреЗ рдХрд╛ рд╕рд╣реА рддрд░реАрдХрд╛:

import * as moment_ from 'moment'; const moment = moment_;

рдФрд░ рдПрдирдЬреА-рдкреИрдХреЗрдЬ рдореЗрдВред рд╕рдВрджреЗрд╢:

{ "lib": { "externals": { "moment": "moment" } } }

рдореЗрд░реЗ рджреНрд╡рд╛рд░рд╛ рд╕рдВрд░рдЪрдирд╛ рдЭреВрдареА рдереА, рдмрд╛рд╣рд░реА рдХрд╛рдореЗрдЪреНрдЫрд╛ рдХреЗ рдЕрдВрджрд░ рдирд╣реАрдВ рдерд╛, рдЗрд╕рд▓рд┐рдП рдкреИрдХрд░рдЯ lib.externals рдХреА рддрд▓рд╛рд╢ рдХрд░ рд░рд╣рд╛ рдерд╛ рдФрд░ рдкрд▓ рдирд╣реАрдВ рдкрд╛ рд░рд╣рд╛ рдерд╛ред

рдПрдирдЬреА-рдкреИрдХреНрдб рдФрд░ рдкрд▓

рдореИрдВ рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдБ, рдЕрднреА рдпрд╣ реи.реиреи.реи рд╣реИред

рдЬрдм рдореИрдВ рдПрдирдЬреА-рдкреИрдХрд╛рдЧреНрд░рд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдФрд░ рдЕрдкрдиреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛ рдкреИрдХ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рдореБрдЭреЗ рдпрд╣ рддреНрд░реБрдЯрд┐ рдорд┐рд▓рддреА рд╣реИред рдХреЗ рд░реВрдк рдореЗрдВ рд╣реА: @vZanchiV

_ locale тАЩ_ node_modulesmoment \ srcmoment.jsтАЩ рджреНрд╡рд╛рд░рд╛ рдирд┐рд░реНрдпрд╛рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ

рднрд╡рди рддреНрд░реБрдЯрд┐
рдПрдХ рдирд╛рдо рд╕реНрдерд╛рди ('рдХреНрд╖рдг') рдирд╣реАрдВ рдХрд╣ рд╕рдХрддреЗ
рддреНрд░реБрдЯрд┐: рдПрдХ рдирд╛рдо рд╕реНрдерд╛рди ('рдХреНрд╖рдг') рдирд╣реАрдВ рдХрд╣ рд╕рдХрддрд╛

рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдпрд╣ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдЖрдпрд╛рддрдХ рд╣реИ:

рдЖрдпрд╛рдд * 'рдкрд▓' рд╕реЗ рдкрд▓ рдХреЗ рд░реВрдк рдореЗрдВ;

рдореБрдЭреЗ рдПрдХ рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рдорд┐рд▓рд╛, рдЬреЛ рдареАрдХ рдирд╣реАрдВ рд╣реБрдЖ, рдореИрдВрдиреЗ рдЗрд╕реЗ рдЖрдпрд╛рдд рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА:

import * as momentImported from 'рдХреНрд╖рдг';

рдЗрд╕ рд╡рд┐рдзрд┐ рдХреЗ рдмрд╛рдж рдореИрдВ рдЕрдкрдиреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЛ ng-packagr рдХреЗ рд╕рд╛рде рдирд┐рд░реНрдпрд╛рдд рдХрд░ рд╕рдХрддрд╛ рдерд╛ рд▓реЗрдХрд┐рди рдлрд┐рд░ рдореИрдВ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЗ рд╕рд╛рде рдЕрдкрдиреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЛ рдХрд┐рд╕реА рдЕрдиреНрдп рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рдЖрдпрд╛рдд рдХрд░рдиреЗ рдореЗрдВ рд╡рд┐рдлрд▓ рд░рд╣рд╛

рдореЙрдбреНрдпреВрд▓ рдирд╣реАрдВ рдорд┐рд▓рд╛: рддреНрд░реБрдЯрд┐: 'C: \ Cocale' рдХреЛ рд╣рд▓ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ 'C: \ development \ angularTest \ angulartestnode_modules \ modulename

@ Francisrod01 рдХреЗ рд╕рдорд╛рдзрд╛рди рдХреА рдкреБрд╖реНрдЯрд┐ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдореИрдВрдиреЗ рдЕрдкрдирд╛ рдЖрдпрд╛рдд рдмрджрд▓ рджрд┐рдпрд╛ рд╣реИ, рддрд╛рдХрд┐ рдЗрд╕рдХреЗ рдмрдЬрд╛рдп

import moment from 'moment/min/moment-with-locales'

рдореИрдВ рдмрджрд▓ рдЧрдпрд╛

import moment from 'moment'
import 'moment/min/locales'

рдФрд░ рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдП рд╣рд▓ рд╣реЛ рдЧрдпрд╛ред рдЖрд╢рд╛ рд╣реИ рдХрд┐ рдЗрд╕рд╕реЗ рд╕рд╣рд╛рдпрддрд╛ рдорд┐рд▓реЗрдЧреАред

рдореБрдЭреЗ @ M1chaelTran рджреНрд╡рд╛рд░рд╛ рдКрдкрд░ рджрд┐рдП рдЧрдП рдЙрдкрдирд╛рдо рдХрд╛ рд╕рдорд╛рдзрд╛рди рдЕрдЪреНрдЫрд╛ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдорд┐рд▓рд╛ред рдпрджрд┐ рдХреЛрдИ рд╡реНрдпрдХреНрддрд┐ рд▓рд╛рд░рд╡реЗрд▓ рдорд┐рдХреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реИ, рддреЛ рд╕реЛрдЪ рд░рд╣рд╛ рд╣реИ рдХрд┐ рдЗрд╕реЗ рдХреИрд╕реЗ рд▓рдЧрд╛рдпрд╛ рдЬрд╛рдП, рдЖрдкрдХреЗ webpack.mix.js рдХреЛ рд╢реАрд░реНрд╖ рдкрд░ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрдирд╛ рдЪрд╛рд╣рд┐рдП:

let mix = require('laravel-mix');

mix.webpackConfig({
    resolve: {
        alias: {
            moment$: 'moment/moment.js'
        }
    }
});

рдКрдкрд░ рджрд┐рдП рдЧрдП рд╕рднреА рд╕рдорд╛рдзрд╛рдиреЛрдВ рдХреЛ рдЖрдЬрд╝рдорд╛рдПрдВ, рдХреЗрд╡рд▓ 'рдбрд╛рдЙрдирдЧреНрд░реЗрдб рдкрд▓ рд╕рдВрд╕реНрдХрд░рдг' рд╣реА рд╣рд▓ рдХрд░ рд╕рдХрддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдореЗрд░реЗ рдХреБрдЫ рдореЙрдбреНрдпреВрд▓ рдЬреИрд╕реЗ 'рдПрдирдЯреАрдбреА' рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ 2.19.0 рд╣реИред рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореИрдВ рдЗрд╕реЗ рдбрд╛рдЙрдирдЧреНрд░реЗрдб рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛

        new webpack.ContextReplacementPlugin(/^\.\/locale$/, (context) => {
            if (!/\/moment\//.test(context.context)) return;

            Object.assign(context, {
                regExp: /^\.\/\w+/,
                request: '../../locale', // resolved relatively
            });
        }),

рдЗрд╕ рд╕рдорд╛рдзрд╛рди рдиреЗ рдореЗрд░реЗ рд▓рд┐рдП рдХрд╛рдо рдХрд┐рдпрд╛ред

# 4216 (рдФрд░ # 3872 рд╕реЗ рдмреВрдЯ) рдХреЗ рд░реВрдк рдореЗрдВ рдПрдХ рд╣реА рдореБрджреНрджрд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред

рд╕рдВрднрд╡рддрдГ # 4216 рдХреЛ рд╕рдВрджрд░реНрднрд┐рдд рдХрд░рдирд╛ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕рдХрд╛ рд╕рдмрд╕реЗ рдмрдбрд╝рд╛ рдЗрддрд┐рд╣рд╛рд╕ рд╣реИ

@ARonkrohn рдзрдиреНрдпрд╡рд╛рдж, рдпрд╣ рд╕рдорд╛рдзрд╛рди рдЕрднрд┐рдХреНрд░рд┐рдпрд╛-рдмреЙрдпрд▓рд░рдкреНрд▓реЗрдЯ v.4 рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ

рдХреНрд╖рдг рдХреЗ рдмрдЬрд╛рдп рдкрд╣рд▓реЗ рд▓реЛрдХрд▓ рд▓реЛрдб рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВред min.js

"рдкрд▓": [
"../Node_modules/moment/locale/en-au.js",
"../Node_modules/moment/min/moment.min.js"
]

рдЗрд╕рд╕реЗ рдореЗрд░реА рд╕рдорд╕реНрдпрд╛ рд╣рд▓ рд╣реЛ рдЬрд╛рдПрдЧреАред

рдореЗрд░реЗ рдкрд╛рд╕ рдкрд▓ 2.24.0 рдФрд░ рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдП рдЖрдЦрд┐рд░рдХрд╛рд░ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИ:

    // Fixes warning in moment-with-locales.min.js
    //   Module not found: Error: Can't resolve './locale' in ..
    new webpack.ContextReplacementPlugin(/^\.\/locale$/, context => {
      if (!/\/moment\//.test(context.context)) return

      Object.assign(context, {
        regExp: /^\.\/\w+/,
        request: '../locale', // resolved relatively
      })
    })

рд▓рдЧрднрдЧ @ARonkrohn рдХреЗ рдлрд┐рдХреНрд╕ рдХреЗ request: '../../locale', рдмрдЬрд╛рдп рдореБрдЭреЗ request: '../locale', рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдкрдбрд╝рд╛ред

рдпрд╣рд╛рдБ рдЗрд╕ рдореБрджреНрджреЗ рдХреЗ рд▓рд┐рдП рддрдп рд╣реИ:

рдлрд╝рд╛рдЗрд▓: "рдХреНрд╖рдг \ src \ liblocalelocales.js" рдкрдВрдХреНрддрд┐ 56:
"./locale" рдХреЛ "..//locale" рдореЗрдВ рдмрджрд▓рдирд╛ рд╣реЛрдЧрд╛

рдПрд▓реЗрдХреНрдЬреЗрдВрдбреНрд░рд╛

рдлрд┐рдХреНрд╕ рд╕рд░рд▓ рд╣реИ ...

рдХрд┐рд╕реА рднреА рдЪреАрдЬрд╝ рдХреЛ рдЗрд╕ рддрд░рд╣ рдЦреЛрдЬреЗрдВ:

import moment from 'moment/src/moment';

рдФрд░ рдЗрд╕реЗ рдЗрд╕рдХреЗ рд╕рд╛рде рдмрджрд▓реЗрдВ

import * as moment from 'moment';

рдмрдирд╛рдиреЗ рдХреЗ рд╕рд╛рде

import * as moment from "moment/moment.js"

рдмрдирд╛рдиреЗ рдХреЗ рд╕рд╛рде

import * as moment from "moment/moment.js"

@mssui рд╕рдорд╛рдзрд╛рди рдореЗрд░реЗ рд▓рд┐рдП рдХрд╛рдо рдХрд┐рдпрд╛

 "resolutions": {
    "moment": "2.24.0"
  }

package.json рдФрд░ рдлрд┐рд░ рдпрд╛рд░реНрди рдХреЗ рд▓рд┐рдП рдКрдкрд░ рдЬреЛрдбрд╝реЗрдВред рдореЗрд░реЗ рд▓рд┐рдП рдареАрдХ рд╣реИ

webpack.config.js

рдХреГрдкрдпрд╛ рдореБрдЭреЗ рдпрд╣ рдлрд╝рд╛рдЗрд▓ рдХрд╣рд╛рдБ рдорд┐рд▓ рд╕рдХрддреА рд╣реИ, рдореБрдЭреЗ рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рд╕рдВрджрд░реНрднрд┐рдд рдкрде рдирд╣реАрдВ рдорд┐рд▓ рд╕рдХрддрд╛, рдЕрдЧреНрд░рд┐рдо рдзрдиреНрдпрд╡рд╛рдж,

рдореИрдВрдиреЗ рдПрдХ рдкреБрд░рд╛рдиреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╕реЗ рдХреНрд╖рдг рд╕реНрд░реЛрдд рдлрд╝реЛрд▓реНрдбрд░ рдХреА рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдмрдирд╛рдХрд░ рдПрдХ рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рдХрд┐рдпрд╛, рдФрд░ рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдП рдХрд╛рдо рдХрд┐рдпрд╛

Https://momentjs.com/docs/#/ -project-status / рджреЗрдЦреЗрдВ

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