рд╣реИрд▓реЛ!
рдЗрд╕ рдорд╣рд╛рди рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж!
рд╣рд╛рд▓рд╛рдВрдХрд┐, рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛрд╣реИ рдХрд┐ рдкреИрдХреЗрдЬ рдореЗрдирд┐рдлреЗрд╕реНрдЯ ( package.json
рдлрд╝рд╛рдЗрд▓) рдореЗрдВ "module"
рдлрд╝реАрд▓реНрдб ESM рдмрдВрдбрд▓ рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП ./src/moment.js
ред
ESM (рд╡реЗрдмрдкреИрдХ, рд░реЛрд▓рдЕрдк, рдФрд░ рдЕрдиреНрдп) рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдмрдВрдбрд▓рд░реНрд╕ рдХреЛ рдЖрдзреБрдирд┐рдХ рдЕрдиреБрдХреВрд▓рди рддрдХрдиреАрдХреЛрдВ (рдЬреИрд╕реЗ рдкреЗрдбрд╝ рдХреЛ рд╣рд┐рд▓рд╛рдирд╛) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП module
рдлрд╝реАрд▓реНрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ ESM рдмрдВрдбрд▓ рдЦреЛрдЬрдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдЕрднреА, рдЗрд╕рдХреЗ рдмрдЬрд╛рдп ./moment.js
UMD рдмрдВрдбрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдпрд╣ рдкреВрд░реЗ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЛ рдИрдПрд╕рдПрдо-рд╕рдХреНрд╖рдо рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВ рд▓реЛрдб рдХрд░рдиреЗ рдХрд╛ рдХрд╛рд░рдг рдмрдирддрд╛ рд╣реИ, рднрд▓реЗ рд╣реА рдЖрдк рдЗрд╕рд╕реЗ рдПрдХ рдкреНрд░рддреАрдХ рдЖрдпрд╛рдд рдХрд░рддреЗ рд╣реИрдВред
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЗрд╕ рддрд░рд╣ рдПрдХ рдЖрдпрд╛рдд:
import { isMoment } from 'moment';
рдкреБрд╕реНрддрдХрд╛рд▓рдп рд╕реЗ рд╕рдм рдХреБрдЫ рдЖрдпрд╛рдд рдХрд░реЗрдЧрд╛, рд╣рд╛рд▓рд╛рдВрдХрд┐, рдХреЗрд╡рд▓ рдПрдХ рд╕рдорд╛рд░реЛрд╣ рдХрд╛ рдЕрдиреБрд░реЛрдз рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рдФрд░ рдЖрдк рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкреНрд░реЛрдЬреЗрдХреНрдЯреНрд╕ рдореЗрдВ рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рдХреЗ рд░реВрдк рдореЗрдВ import { isMoment } from 'moment/src/moment';
рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЯрд╛рдЗрдкрд┐рдВрдЧ рдХреЛ рддреЛрдбрд╝ рджреЗрдЧрд╛ред
./src/moment.js
рдХреА рд╕рд╛рдордЧреНрд░реА рдХреЛ рджреЗрдЦрдиреЗ рдХреЗ рдмрд╛рдж рдореИрдВ рдЕрдкрдиреЗ рд╢рдмреНрджреЛрдВ рдХреЛ рд╡рд╛рдкрд╕ рд▓реЗ рд░рд╣рд╛ рд╣реВрдВред рдИрдПрд╕рдПрдо рдХреЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╕реЗ рд╕рд╛рдордЧреНрд░реА рдХрд╛ рдХреЛрдИ рдорддрд▓рдм рдирд╣реАрдВ рд╣реИред Moment
, isMoment
, рдЖрджрд┐ рдЬреИрд╕реЗ рдЙрдкрдпреЛрдЧреА рдкреНрд░рддреАрдХреЛрдВ рдХреЛ рдЖрдпрд╛рдд рдФрд░ рдкреБрди: рдирд┐рд░реНрдпрд╛рдд рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп, рдпрд╣ рдПрдХ рд╡рд╕реНрддреБ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░ рд░рд╣рд╛ рд╣реИ рдФрд░ рдЗрд╕реЗ рдирд┐рд░реНрдпрд╛рдд рдХрд░рддрд╛ рд╣реИред рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛрд╣реИ рдХрд┐ рдпрд╣ рдпреВрдПрдордбреА рдмрдВрдбрд▓ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреНрд░рд╡реЗрд╢ рдмрд┐рдВрджреБ рд╣реИ, рд╣реИ рдирд╛?
рдЖрдзреБрдирд┐рдХ рдЙрдкрдХрд░рдгреЛрдВ рдХреЗ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдореЗрдВ рдПрдХ рдЙрдЪрд┐рдд рдИрдПрд╕рдПрдо рдмрдВрдбрд▓ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЬреЛ рд╕рднреА рдЙрдкрдпреЛрдЧреА рдкреНрд░рддреАрдХреЛрдВ рдХреЛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдирд┐рд░реНрдпрд╛рдд рдХрд░реЗрдЧрд╛ред
рдореИрдВ рдЙрди рдкреНрд░рддреАрдХреЛрдВ рдХреЛ рдЖрдпрд╛рдд рдХрд░рдиреЗ рдореЗрдВ рдХрд╛рдордпрд╛рдм рд░рд╣рд╛ рд╣реВрдВ рдЬрд┐рдирдХреА рдореБрдЭреЗ рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ (рдкрд▓ рдХреЗ рдкреВрд░реЗ рдмрдВрдбрд▓ рдХреЛ рд▓реЛрдб рдХрд┐рдП рдмрд┐рдирд╛) рдЗрд╕ рддрд░рд╣:
// @ts-ignore
import { isMoment, Moment } from 'moment/src/lib/moment/constructor';
рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдЯрд╛рдЗрдкрд┐рдВрдЧ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЛ @ts-ignore
рд╕реЗ рджрдмрд╛рдирд╛ рдкрдбрд╝рд╛, рдЬреЛ рдЖрдпрд╛рдд рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЖрдпрд╛рддрд┐рдд рдкреНрд░рддреАрдХреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рднреА рдЯрд╛рдЗрдкрд┐рдВрдЧ рдХреЛ рддреЛрдбрд╝ рджреЗрддрд╛ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдкрде рдмрджрд╕реВрд░рдд рд╣реИ рдФрд░ рдЕрдВрддрд┐рдо рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рджреНрд╡рд╛рд░рд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП (рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЗрдирдХреИрдкреНрд╕реБрд▓реЗрд╢рди рдХреЛ рддреЛрдбрд╝рддрд╛ рд╣реИ)ред
рдореИрдВрдиреЗ рдЕрднреА рдПрдХ рдкреНрд░рдпреЛрдЧ рдХрд┐рдпрд╛ рд╣реИред рдореИрдВрдиреЗ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕рд╛рдордЧреНрд░реА рдХреЗ рд╕рд╛рде рдкреИрдХреЗрдЬ рдХреЗ рдореВрд▓ рдореЗрдВ moment.esm.js
рдирд╛рдордХ рдПрдХ рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдИ рд╣реИ:
export { isMoment, Moment } from './src/lib/moment/constructor';
рдФрд░ рдкреИрдХреЗрдЬ рдореЗрдирд┐рдлреЗрд╕реНрдЯ рд╕реЗ рдЗрд╕реЗ рдЗрдВрдЧрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП module
рдлрд╝реАрд▓реНрдб рдЬреЛрдбрд╝рд╛ред
рдлрд┐рд░ рдореИрдВрдиреЗ рдЗрд╕реЗ рдЕрдкрдиреЗ рдЖрд╡реЗрджрди рдореЗрдВ рдЖрдпрд╛рдд рдХрд┐рдпрд╛:
import { isMoment, Moment } from 'moment';
рдпрд╣ рдЕрдкреЗрдХреНрд╖рд┐рдд рд░реВрдк рд╕реЗ рдХрд╛рдо рдХрд░ рд░рд╣реЗ рдЯрд╛рдЗрдкрд┐рдВрдЧ рдШреЛрд╖рдгрд╛рдУрдВ рдХреЗ рд╕рд╛рде рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдЖрдпрд╛рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдФрд░ рд╡реЗрдмрдкреИрдХ рдФрд░ рд░реЛрд▓рдЕрдк рдмрд┐рд▓реНрдб рдХреЗ рджреМрд░рд╛рди рднреА рд╕рд╣реА рддрд░реАрдХреЗ рд╕реЗ рдХрд╛рдо рдХрд┐рдпрд╛ред рд╕рднреА рд╕реНрдерд╛рдиреЛрдВ рдХреЗ рд╕рд╛рде рдкреВрд░реЗ рдмрдВрдбрд▓ рдХреЛ рд▓реЛрдб рдХрд┐рдП рдмрд┐рдирд╛ рдХреЗрд╡рд▓ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдкреНрд░рддреАрдХреЛрдВ рдХреЛ рдЖрдпрд╛рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛтАЛтАЛрд╣реИ рдХрд┐ рдпрд╣ рдЬрд╛рдиреЗ рдХрд╛ рдПрдХ рддрд░реАрдХрд╛ рд╣реИ рдФрд░ рдЗрд╕реЗ рдШреЛрд╖рдгрд╛рдУрдВ рдореЗрдВ рд╡рд░реНрдгрд┐рдд рдЕрдиреНрдп рдкреНрд░рддреАрдХреЛрдВ рдХреЛ рдирд┐рд░реНрдпрд╛рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрдврд╝рд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рдореИрдВ рдЗрд╕рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реВрдВред
рджреЗрдЦреЗрдВ https://momentjs.com/docs/#/ -project-status/
рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА
./src/moment.js
рдХреА рд╕рд╛рдордЧреНрд░реА рдХреЛ рджреЗрдЦрдиреЗ рдХреЗ рдмрд╛рдж рдореИрдВ рдЕрдкрдиреЗ рд╢рдмреНрджреЛрдВ рдХреЛ рд╡рд╛рдкрд╕ рд▓реЗ рд░рд╣рд╛ рд╣реВрдВред рдИрдПрд╕рдПрдо рдХреЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╕реЗ рд╕рд╛рдордЧреНрд░реА рдХрд╛ рдХреЛрдИ рдорддрд▓рдм рдирд╣реАрдВ рд╣реИредMoment
,isMoment
, рдЖрджрд┐ рдЬреИрд╕реЗ рдЙрдкрдпреЛрдЧреА рдкреНрд░рддреАрдХреЛрдВ рдХреЛ рдЖрдпрд╛рдд рдФрд░ рдкреБрди: рдирд┐рд░реНрдпрд╛рдд рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп, рдпрд╣ рдПрдХ рд╡рд╕реНрддреБ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░ рд░рд╣рд╛ рд╣реИ рдФрд░ рдЗрд╕реЗ рдирд┐рд░реНрдпрд╛рдд рдХрд░рддрд╛ рд╣реИред рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛрд╣реИ рдХрд┐ рдпрд╣ рдпреВрдПрдордбреА рдмрдВрдбрд▓ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреНрд░рд╡реЗрд╢ рдмрд┐рдВрджреБ рд╣реИ, рд╣реИ рдирд╛?рдЖрдзреБрдирд┐рдХ рдЙрдкрдХрд░рдгреЛрдВ рдХреЗ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдореЗрдВ рдПрдХ рдЙрдЪрд┐рдд рдИрдПрд╕рдПрдо рдмрдВрдбрд▓ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЬреЛ рд╕рднреА рдЙрдкрдпреЛрдЧреА рдкреНрд░рддреАрдХреЛрдВ рдХреЛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдирд┐рд░реНрдпрд╛рдд рдХрд░реЗрдЧрд╛ред
рдореИрдВ рдЙрди рдкреНрд░рддреАрдХреЛрдВ рдХреЛ рдЖрдпрд╛рдд рдХрд░рдиреЗ рдореЗрдВ рдХрд╛рдордпрд╛рдм рд░рд╣рд╛ рд╣реВрдВ рдЬрд┐рдирдХреА рдореБрдЭреЗ рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ (рдкрд▓ рдХреЗ рдкреВрд░реЗ рдмрдВрдбрд▓ рдХреЛ рд▓реЛрдб рдХрд┐рдП рдмрд┐рдирд╛) рдЗрд╕ рддрд░рд╣:
рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдЯрд╛рдЗрдкрд┐рдВрдЧ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЛ
@ts-ignore
рд╕реЗ рджрдмрд╛рдирд╛ рдкрдбрд╝рд╛, рдЬреЛ рдЖрдпрд╛рдд рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЖрдпрд╛рддрд┐рдд рдкреНрд░рддреАрдХреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рднреА рдЯрд╛рдЗрдкрд┐рдВрдЧ рдХреЛ рддреЛрдбрд╝ рджреЗрддрд╛ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдкрде рдмрджрд╕реВрд░рдд рд╣реИ рдФрд░ рдЕрдВрддрд┐рдо рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рджреНрд╡рд╛рд░рд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП (рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЗрдирдХреИрдкреНрд╕реБрд▓реЗрд╢рди рдХреЛ рддреЛрдбрд╝рддрд╛ рд╣реИ)редрдореИрдВрдиреЗ рдЕрднреА рдПрдХ рдкреНрд░рдпреЛрдЧ рдХрд┐рдпрд╛ рд╣реИред рдореИрдВрдиреЗ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕рд╛рдордЧреНрд░реА рдХреЗ рд╕рд╛рде рдкреИрдХреЗрдЬ рдХреЗ рдореВрд▓ рдореЗрдВ
moment.esm.js
рдирд╛рдордХ рдПрдХ рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдИ рд╣реИ:рдФрд░ рдкреИрдХреЗрдЬ рдореЗрдирд┐рдлреЗрд╕реНрдЯ рд╕реЗ рдЗрд╕реЗ рдЗрдВрдЧрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП
module
рдлрд╝реАрд▓реНрдб рдЬреЛрдбрд╝рд╛редрдлрд┐рд░ рдореИрдВрдиреЗ рдЗрд╕реЗ рдЕрдкрдиреЗ рдЖрд╡реЗрджрди рдореЗрдВ рдЖрдпрд╛рдд рдХрд┐рдпрд╛:
рдпрд╣ рдЕрдкреЗрдХреНрд╖рд┐рдд рд░реВрдк рд╕реЗ рдХрд╛рдо рдХрд░ рд░рд╣реЗ рдЯрд╛рдЗрдкрд┐рдВрдЧ рдШреЛрд╖рдгрд╛рдУрдВ рдХреЗ рд╕рд╛рде рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдЖрдпрд╛рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдФрд░ рд╡реЗрдмрдкреИрдХ рдФрд░ рд░реЛрд▓рдЕрдк рдмрд┐рд▓реНрдб рдХреЗ рджреМрд░рд╛рди рднреА рд╕рд╣реА рддрд░реАрдХреЗ рд╕реЗ рдХрд╛рдо рдХрд┐рдпрд╛ред рд╕рднреА рд╕реНрдерд╛рдиреЛрдВ рдХреЗ рд╕рд╛рде рдкреВрд░реЗ рдмрдВрдбрд▓ рдХреЛ рд▓реЛрдб рдХрд┐рдП рдмрд┐рдирд╛ рдХреЗрд╡рд▓ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдкреНрд░рддреАрдХреЛрдВ рдХреЛ рдЖрдпрд╛рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛтАЛтАЛрд╣реИ рдХрд┐ рдпрд╣ рдЬрд╛рдиреЗ рдХрд╛ рдПрдХ рддрд░реАрдХрд╛ рд╣реИ рдФрд░ рдЗрд╕реЗ рдШреЛрд╖рдгрд╛рдУрдВ рдореЗрдВ рд╡рд░реНрдгрд┐рдд рдЕрдиреНрдп рдкреНрд░рддреАрдХреЛрдВ рдХреЛ рдирд┐рд░реНрдпрд╛рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрдврд╝рд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред