рдореБрдЭреЗ рдЗрд╕ рддрд░рд╣ рдХреЗ рдЕрдиреБрд░реЛрдз рдореЗрдВ рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рдорд┐рд▓реА, рдЗрд╕рд▓рд┐рдП рдореИрдВ рдПрдХ рдмрдирд╛ рд░рд╣рд╛ рд╣реВрдВ
рдореИрдВ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдЙрдЫрд╛рд▓рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдХреНрдпреЛрдВрдХрд┐ 24 рдЕрдЧрд╕реНрдд рдХреЗ рдмрд╛рдж рд╕реЗ рдХреЛрдИ рдЧрддрд┐рд╡рд┐рдзрд┐ рдирд╣реАрдВ рд╣реБрдИ рдереА рдФрд░ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИред
рдореИрдВ рдлрд╝рд╛рдЗрд▓ рдкрд░рд┐рд╡рд░реНрддрди рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдиреЛрдбрдореЙрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ рдФрд░ рдПрдирдкреАрдПрдо рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ tslint рдЪрд▓рд╛рддрд╛ рд╣реВрдВред рдПрдХ рдЙрджрд╛рд╣рд░рдг https://github.com/ryancat/create-ts-library/blob/master/package.json#L9
рдиреЛрдбрдореЛрди рд╕реЗ рдмрд╛рд╣рд░ рдирд┐рдХрд▓рдиреЗ рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ рддреНрд░реБрдЯрд┐ рдХреЛрдб 2 рд╕реЗ рдмрд╛рд╣рд░ рдирд┐рдХрд▓рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрдЧреАред
рдмрд╕ рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдкрд░ рдмрд▓ рджреЗрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред
рдореИрдВ рдЪрд╛рд╣реВрдВрдЧрд╛ рдХрд┐ рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХреЛ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рдП
рдореБрдЭреЗ рдмреБрдЦрд╛рд░ рд╣реЛ рдЧрдпрд╛ рд╣реИред рдФрд░ рдПрдХрдорд╛рддреНрд░ рдиреБрд╕реНрдЦрд╛ рдЕрдзрд┐рдХ рд╣реИ --watch
ред
рдпрд╣ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ _рдмрд╣реБрдд рдХрдард┐рди_ рд╕реБрд╡рд┐рдзрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕рдХреЗ рд▓рд┐рдП рд╡реГрджреНрдзрд┐рд╢реАрд▓ рд░реА-рд░рди рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдореМрд▓рд┐рдХ рд░реВрдк рд╕реЗ рдкреБрдирд░реНрд░рдЪрдирд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣рд╛рдВ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╢рд░реНрдд рдЕрдиреНрдп рдореМрдЬреВрджрд╛ рд╡реЙрдЪрд░ рдЯреВрд▓ рдХреЗ рд╕рд╛рде tslint рдХреЛ рд╕рдВрдпреЛрдЬрд┐рдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рдЬреИрд╕реЗ рдКрдкрд░ рдЙрд▓реНрд▓рд┐рдЦрд┐рдд nodemon
рдпрд╛ https: //www.npmjs.com/package/watch
рд╡реГрджреНрдзрд┐рд╢реАрд▓ рдкреБрди: рд░рдиреЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдореМрд▓рд┐рдХ рд░реВрдк рд╕реЗ рдкреБрдирд░реНрд░рдЪрдирд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ
FWIW рдЬреЛ рдмрд╣реБрдд рдХрдард┐рди рд▓рдЧрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдкрд░рд┐рд╡рд░реНрддрди рдкрд░ рд╕рднреА tslint рдХреЛ рдлрд┐рд░ рд╕реЗ рдЪрд▓рд╛рдиреЗ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЕрдзрд┐рдХ рдкреНрд░рджрд░реНрд╢рдирдХрд╛рд░реА рд╣реИ, рдЬреИрд╕рд╛ рдХрд┐ рддреГрддреАрдп-рдкрдХреНрд╖ рдЯреВрд▓ рдХреЗ рд╕рд╛рде рд╣реЛрддрд╛ рд╣реИред рдЗрд╕ рдЕрдиреБрд░реЛрдз рдХреЛ +1, рд╕рдордЭрдиреЗ рдХреЗ рд╕реНрд╡рд╕реНрде рдкрдХреНрд╖ рдХреЗ рд╕рд╛рдеред
рдпрд╣.
рдореЗрд░рд╛ рдЯреВрд▓ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕ рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдореИрдВ рд╕рдордЭрддрд╛ рд╣реВрдВ рдХрд┐ рдЗрд╕реЗ рд▓рд╛рдЧреВ рдХрд░рдирд╛ рд╡рд╛рдХрдИ рдореБрд╢реНрдХрд┐рд▓ рд╣реИред https://github.com/guidojo/multipleTypescriptCompilers#readme
рдЯреВрд▓ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдПрдХ tsc рдХрдВрдкрд╛рдЗрд▓рд░ рдЪрд▓рд╛рддрд╛ рд╣реИ рдФрд░ рдкреНрд░рддреНрдпреЗрдХ рд░рди рдХреЗ рдмрд╛рдж, рдпрд╣ рдкреНрд░рддреНрдпреЗрдХ рдлрд╝рд╛рдЗрд▓ рдХреЛ рдЕрд▓рдЧ рд╕реЗ рд▓рд┐рдВрдЯ рдХрд░реЗрдЧрд╛ред рдпрджрд┐ рдХрд┐рд╕реА рдЕрдиреНрдп рд╕рдВрдХрд▓рди рд╕реЗ рдмрд╛рдзрд┐рдд рд╣реЛрддрд╛ рд╣реИ, рддреЛ рдпрд╣ рдирд┐рд░рд╕реНрдд рд╣реЛ рдЬрд╛рдПрдЧрд╛ред :)
рдХреНрдпрд╛ рдХрд┐рд╕реА рдиреЗ рдЕрднреА рддрдХ рдЗрд╕ рдкрд░ рдЧреМрд░ рдХрд┐рдпрд╛?
рдЗрд╕ рдмреАрдЪ, рдореИрдВ рдЕрдкрдиреА рдПрдирдкреАрдПрдо рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ onchange
рдкреИрдХреЗрдЬ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ: https://github.com/alexburner/chain-of-being/blob/85230a5b0bf06e1e0a729559c340493c93dac008/package.json#L18
рдЗрд╕реЗ prettier
рдбреЙрдХреНрд╕ рдореЗрдВ рджреЗрдЦрдиреЗ рдХреЗ рдмрд╛рдж: https://prettier.io/docs/en/watching-files.html
onchange
рдкреИрдХреЗрдЬ рдХрд╛ рдЙрдкрдпреЛрдЧ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдЙрд╕ рд╕реБрдЭрд╛рд╡ @alexburner рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдзрдиреНрдпрд╡рд╛рджред рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдЗрд╕реЗ tslint рдФрд░ stylelint рджреЛрдиреЛрдВ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ:
{
"lint": "concurrently \"yarn tslint:once\" \"yarn stylelint:once\" && onchange 'src/**/*.*' -- concurrently \"yarn tslint:once\" \"yarn stylelint:once\"",
"tslint:once": "tslint -p . -c ./tslint.json --fix './src/**/*.+(ts|tsx)'",
"stylelint:once": "stylelint --fix **/*.scss",
}
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╕реАрдПрд▓рдЖрдИ рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЛрдВ рдХреЗ рд▓рд┐рдП onchange
рд╕рдорд╛рдзрд╛рди рдкрд░реНрдпрд╛рдкреНрдд рд╣реИред рдЖрдк рдиреЛрдб рдПрдкреАрдЖрдИ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдпрджрд┐ рдЖрдк рдЪрд╛рд╣реЗрдВ рддреЛ рдЙрд╕рдХреЗ рдКрдкрд░ рдПрдХ рд╡реЙрдЪрд░ рд▓рд╛рдЧреВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдореИрдВ рдЗрд╕реЗ рдмрдВрдж рдХрд░рдиреЗ рдЬрд╛ рд░рд╣рд╛ рд╣реВрдВ рдХреНрдпреЛрдВрдХрд┐ рд╣рдо рд╡рд┐рдХрд╛рд╕ рдкреНрд░рдпрд╛рд╕реЛрдВ рдХреЛ TSLint рдореЗрдВ рдХрд╣реАрдВ рдФрд░ рдХреЗрдВрджреНрд░рд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред
рдореИрдВ рдЕрд╕рд╣рдордд рд╣реВрдВ рдХрд┐ рдЗрд╕реЗ рдмрдВрдж рдХрд░ рджрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдФрд░ рдХрдо рд╕реЗ рдХрдо рд░реЛрдбрдореИрдк рдкрд░ рд░рд╣рдирд╛ рдЪрд╛рд╣рд┐рдП, рднрд▓реЗ рд╣реА рдлреЛрдХрд╕ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдХрд╣реАрдВ рдФрд░ рд╣реЛред рдЯреАрдПрд╕рд╕реА рдХреЗ tsc -w
. рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рджреЗрдЦрдирд╛ рдмрд╣реБрдд рдЬрдЯрд┐рд▓ рд▓рдЧрддрд╛ рд╣реИ
рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА
рдореИрдВ рдЕрд╕рд╣рдордд рд╣реВрдВ рдХрд┐ рдЗрд╕реЗ рдмрдВрдж рдХрд░ рджрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдФрд░ рдХрдо рд╕реЗ рдХрдо рд░реЛрдбрдореИрдк рдкрд░ рд░рд╣рдирд╛ рдЪрд╛рд╣рд┐рдП, рднрд▓реЗ рд╣реА рдлреЛрдХрд╕ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдХрд╣реАрдВ рдФрд░ рд╣реЛред рдЯреАрдПрд╕рд╕реА рдХреЗ
tsc -w
. рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рджреЗрдЦрдирд╛ рдмрд╣реБрдд рдЬрдЯрд┐рд▓ рд▓рдЧрддрд╛ рд╣реИ