Moment: 2.19.1: рдЕрдм рдкрд▓, рдкрд▓-рд╕рдордп рдФрд░ рд╕рдордп-рд╡реНрдпрд╡рд╕рд╛рдп-рджрд┐рдиреЛрдВ рдХреЛ рдЬреЛрдбрд╝ рдирд╣реАрдВ рд╕рдХрддрд╛

рдХреЛ рдирд┐рд░реНрдорд┐рдд 12 рдЕрдХреНрддреВре░ 2017  ┬╖  7рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: moment/moment

рдореИрдВ moment , moment-timezone , moment-business-days (рдФрд░ moment-range рд▓реЗрдХрд┐рди рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реИ), рдЬреИрд╕реЗ :

import 'moment-timezone';
import moment from 'moment-business-days';
import { extendMoment } from 'moment-range';

moment.locale('en-us', {
    week: {
        dow: 1, // Monday is the first day of the week
    },
    holidays: [
        '2017-10-09',
        '2017-12-25',
        '2018-01-01',
        '2018-04-02',
        '2018-05-21',
        '2018-06-25',
        '2018-07-02',
        '2018-09-03',
        '2018-10-08',
        '2018-12-24',
        '2018-12-25',
    ],
    holidayFormat: 'YYYY-MM-DD',
});

moment.tz.setDefault('America/Montreal');

export default extendMoment(moment);

2.19.1 рдореЗрдВ рдЕрдкрдЧреНрд░реЗрдб рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдЗрд╕рдиреЗ рд╕рднреА рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдореЗрдВ рдХрд╛рдо рдХрд┐рдпрд╛ред рдЕрдм рдореБрдЭреЗ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рддреНрд░реБрдЯрд┐ рдорд┐рд▓рддреА рд╣реИ:

Uncaught TypeError: Cannot read property 'setDefault' of undefined

рдФрд░ рдореИрдВрдиреЗ рдЗрд╕реЗ moment.tz рдиреАрдЪреЗ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдпрд╛ рд╣реИред

рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдпрджрд┐ рдореИрдВ import moment from moment-timezone рддреЛ moment-business-days рдЕрдм рдХрд╛рдо рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ред

рд╡рд╛рддрд╛рд╡рд░рдг:

MacOS 10.12.6 рдкрд░ рдХреНрд░реЛрдо 61
рд╡реЗрдмрдкреИрдХ рд╕реЗ рд╕рдВрдХрд▓рд┐рдд

рдбрд┐рдмрдЧ рдЖрдЙрдЯрдкреБрдЯ:

Thu Oct 12 2017 12:29:48 GMT-0700 (PDT)
10/12/2017, 12:29:48 PM
420
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36
2.19.1

рдХреЛрдИ рд░рд╛рдп?

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

рдХреНрдпрд╛ рдпрд╣ рдЬрд▓реНрдж рд╣реА рддрдп рд╣реЛрдиреЗ рд╡рд╛рд▓рд╛ рд╣реИ? рдпрд╛ рдЗрд╕рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдЬреНрдЮрд╛рдд рдХрд╛рд░реНрдп рд╣реИ? 2.18.1 рдкрд░ рд░рд╣рдирд╛ рд╢рд╛рдпрдж рдЕрдзрд┐рдХ рд╕рдордп рддрдХ рдПрдХ рд╡рд┐рдХрд▓реНрдк рди рд╣реЛ ...

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

рдореБрдЭреЗ рд╡рд┐рд╢реНрд╡рд╛рд╕ рд╣реИ рдХрд┐ рдореБрдЭреЗ рдХреБрдЫ рдРрд╕рд╛ рд╣реА рдорд┐рд▓ рд░рд╣рд╛ рд╣реИред

рдЗрд╕ рд▓рд╛рдЗрди рдкрд░ import moment from 'moment-timezone' рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛:

var deadlineDisplay = moment.duration(deadlineSeconds, "seconds").format("h [hrs], m [min], s [sec]тАЭ)

рдЗрд╕ рддреНрд░реБрдЯрд┐ рдХреЛ рдлреЗрдВрдХрддрд╛ рд╣реИ:

Uncaught TypeError: _momentTimezone2.default.duration(...).format is not a function

2.18.1 рдкрд░ рд╡рд╛рдкрд╕ рдЬрд╛рдирд╛ рдареАрдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред

рдореИрдВ рдПрдХ рд╕рдорд╛рди рддреНрд░реБрдЯрд┐ рджреЗрдЦ рд░рд╣рд╛ рд╣реВрдВред moment-timezone рдХреЛ рдХреЗрд╡рд▓ moment рд▓рд┐рдП рдирдП рддрд░реАрдХреЗ рдЬреЛрдбрд╝рдирд╛ рдЪрд╛рд╣рд┐рдП, рдФрд░ рдлрд┐рд░ рдореВрд▓ moment рдСрдмреНрдЬреЗрдХреНрдЯ рд╡рд╛рдкрд╕ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рд╣рд╛рд▓рд╛рдВрдХрд┐, 2.19.1 рдореЗрдВ рдХреБрдЫ moment-timezone рддреБрд▓рдирд╛ рдореЗрдВ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрд▓рдЧ рдЙрджрд╛рд╣рд░рдг рд╡рд╛рдкрд╕ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП moment ред

require('moment').version // 2.18.1
require('moment') === require('moment-timezone') // true
require('moment').version // 2.19.1
require('moment') === require('moment-timezone') //false

рджреЛрдиреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдорд╛рди 2.19.0 рдФрд░ 2.19.1

рдХреНрдпрд╛ рдпрд╣ рдЬрд▓реНрдж рд╣реА рддрдп рд╣реЛрдиреЗ рд╡рд╛рд▓рд╛ рд╣реИ? рдпрд╛ рдЗрд╕рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдЬреНрдЮрд╛рдд рдХрд╛рд░реНрдп рд╣реИ? 2.18.1 рдкрд░ рд░рд╣рдирд╛ рд╢рд╛рдпрдж рдЕрдзрд┐рдХ рд╕рдордп рддрдХ рдПрдХ рд╡рд┐рдХрд▓реНрдк рди рд╣реЛ ...

рдХреНрдпрд╛ рдЖрдк рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рд╣реИрдВ рдХрд┐ рдпрд╣ рд╕рдорд╕реНрдпрд╛ рдЕрднреА рднреА рдХреНрд╖рдг 2.24.0 рдФрд░ рдкрд▓-рд╕рдордп рдкрд░ 0.5.26 рдХреЗ рд╕рд╛рде рдореМрдЬреВрдж рд╣реИ? рдпрджрд┐ рдореИрдВ рдХрд░рддрд╛ рд╣реВрдБ:

require('moment-timezone');
var moment = require('moment-business-days');

рдореИрдВ рдПрдХ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реИ

рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдЕрднреА рднреА рд╕рдорд╕реНрдпрд╛ рд╣реИ рддреЛ рдХреГрдкрдпрд╛ рдкреБрдирдГ рдЦреЛрд▓реЗрдВред

рдпрд╣ рдЕрднреА рднреА рдПрдХ рдореБрджреНрджрд╛ рд╣реИ, рдерд┐рдпреЛред

рдЖрд╡рд╢реНрдпрдХрддрд╛ ('рдХреНрд╖рдг')ред рд╕рдВрд╕реНрдХрд░рдг // 2.24.0
рдЖрд╡рд╢реНрдпрдХрддрд╛ (-рдХреНрд╖рдг тАЩ) === рдЖрд╡рд╢реНрдпрдХрддрд╛ ('рдХреНрд╖рдг-рд╕рдордпрдХреНрд╖реЗрддреНрд░тАЩ) // рд╕рдЪ

рдЖрд╡рд╢реНрдпрдХрддрд╛ ('рдХреНрд╖рдг')ред рд╕рдВрд╕реНрдХрд░рдг // 2.25.3
рдЖрд╡рд╢реНрдпрдХрддрд╛ ('рдХреНрд╖рдг') === рдЖрд╡рд╢реНрдпрдХрддрд╛ ('рдХреНрд╖рдг-рд╕рдордпрдХреНрд╖реЗрддреНрд░') // рдЕрд╕рддреНрдп

рдЖрд╡рд╢реНрдпрдХрддрд╛ ('рдХреНрд╖рдг')ред рд╕рдВрд╕реНрдХрд░рдг // 2.26.0
рдЖрд╡рд╢реНрдпрдХрддрд╛ ('рдХреНрд╖рдг') === рдЖрд╡рд╢реНрдпрдХрддрд╛ ('рдХреНрд╖рдг-рд╕рдордпрдХреНрд╖реЗрддреНрд░') // рдЕрд╕рддреНрдп

рдЖрд╡рд╢реНрдпрдХрддрд╛ ('рдХреНрд╖рдг')ред рд╕рдВрд╕реНрдХрд░рдг // 2.27.0
рдЖрд╡рд╢реНрдпрдХрддрд╛ ('рдХреНрд╖рдг') === рдЖрд╡рд╢реНрдпрдХрддрд╛ ('рдХреНрд╖рдг-рд╕рдордпрдХреНрд╖реЗрддреНрд░') // рдЕрд╕рддреНрдп

рдЗрд╕рд▓рд┐рдП рд╕рдВрд╕реНрдХрд░рдг 2.24.0 рдХреЗ рдмрд╛рдж рд╕реЗ рдореИрдВ рдЯрд╛рдЗрдордЬрд╝реЛрди рд╕реЗрдЯ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ред рдпрд╣ рдЕрд╕рд▓реА рдмрдорд░ рд╣реИред

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