Feathers: рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕рдорд░реНрдерди

рдХреЛ рдирд┐рд░реНрдорд┐рдд 7 рдЕрдЧре░ 2016  ┬╖  103рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: feathersjs/feathers

__рдорд╣рддреНрд╡рдкреВрд░реНрдг__: рдкрдВрдЦ 4 рдФрд░ рдмрд╛рдж рдореЗрдВ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕рдорд░реНрдерди рд╣реИред рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП рдХреГрдкрдпрд╛

http://docs.phersjs.com/frameworks/angular2.html
рдЕрдм рдбреЗрдореЛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ

const feathers = require('feathers/client');
const socketio = require('feathers-socketio/client');
const io = require('socket.io-client');
const localstorage = require('feathers-localstorage');
const hooks = require('feathers-hooks');
const rest = require('feathers-rest/client');
const authentication = require('feathers-authentication/client');

import рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреГрдкрдпрд╛ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкрд░рд┐рднрд╛рд╖рд╛рдУрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░реЗрдВ!

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

рдкрд░рд┐рднрд╛рд╖рд╛рдУрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдВрдЯрд╛:

рдореЗрд░реЗ рдкрд╛рд╕ рдереЛрдбрд╝рд╛ рдХрд╛рдо рдерд╛, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдкрдВрдЦ рдФрд░ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкрд╕рдВрдж рд╣реИ

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

рдУрд╣, рдЕрднреА рджреЗрдЦрд╛ https://github.com/phersjs/feeds/issues/64... рд▓реЗрдХрд┐рди рд╢рд╛рдпрдж рдЗрд╕реЗ рдЦреБрд▓рд╛ рдЫреЛрдбрд╝ рджреЗрдВ? рддреЛ рдХреБрдЫ рд▓реЛрдЧ рдорджрдж рдХреА рдкреЗрд╢рдХрд╢ рдХрд░реЗрдВрдЧреЗ?

рдЗрд╕реЗ рдЖрдЧреЗ рдмрдврд╝рд╛рдиреЗ рдХрд╛ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рддрд░реАрдХрд╛ рдХреБрдЫ рдмреБрдирд┐рдпрд╛рджреА рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкрд░рд┐рднрд╛рд╖рд╛рдУрдВ рдХреЗ рд╕рд╛рде рдПрдХ рднрдВрдбрд╛рд░ рд╢реБрд░реВ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ (# 64 рдореЗрдВ рдореИрдВрдиреЗ рдХреБрдЫ рдкреЙрдЗрдВрдЯрд░реНрд╕ рдкреЛрд╕реНрдЯ рдХрд┐рдП рд╣реИрдВ рдЬрд╣рд╛рдВ рд╕реЗ рд╢реБрд░реВ рдХрд░рдирд╛ рд╣реИ) рдФрд░ рдЬрд╛рд░реА рд░рдЦреЗрдВ
рд╡рд╣рд╛рдБ рдЪрд░реНрдЪрд╛ред

рдореИрдВ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдПрдХ рдпрд╛ рджреЛ рдорд╣реАрдиреЗ рдХреЗ рд▓рд┐рдП рдЦреБрд▓рд╛ рдЫреЛрдбрд╝ рд╕рдХрддрд╛ рд╣реВрдВ рд▓реЗрдХрд┐рди рджреВрд╕рд░рд╛ рдореБрджреНрджрд╛ рд▓рдЧрднрдЧ рдПрдХ рд╕рд╛рд▓ рд╕реЗ рдЦреБрд▓рд╛ рдерд╛ рдФрд░ рдХрд┐рд╕реА рдиреЗ рдЗрд╕реЗ рдирд╣реАрдВ рдЙрдард╛рдпрд╛ред рдЬреИрд╕рд╛ рдХрд┐ рд╡рд╣рд╛рдВ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рд╡рд░реНрддрдорд╛рди рдХреЛрд░ рдЯреАрдо рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдпрд╛ рдХреЛрдгреАрдп рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд░рд╣реА рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╣рдорд╛рд░реЗ рд░рдбрд╛рд░ рдкрд░ рдирд╣реАрдВ рд╣реИ (рдФрд░ рд╣рдо рдХреЗрд╡рд▓ рдореБрджреНрджреЛрдВ рдХреЛ рдЦреБрд▓рд╛ рд░рдЦрдирд╛ рдкрд╕рдВрдж рдХрд░реЗрдВрдЧреЗ рдпрджрд┐ рдХреЛрдИ рдореМрдХрд╛ рд╣реИ рдХрд┐ рдЙрдиреНрд╣реЗрдВ рдирд┐рдХрдЯ рднрд╡рд┐рд╖реНрдп рдореЗрдВ рд╕рдВрдмреЛрдзрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛)ред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ @harangue рдХреБрдЫ рдмреБрдирд┐рдпрд╛рджреА рдкрд░рд┐рднрд╛рд╖рд╛рдУрдВ рдкрд░ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИред рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рд╣рдо рд╕реНрд▓реИрдХ рдкрд░ рд╣реБрдИ рдЪрд░реНрдЪрд╛ рдХреЛ рдЖрдЧреЗ рдмрдврд╝рд╛ рд╕рдХреЗрдВ рдХрд┐ рд╡реЗ рдпрд╣рд╛рдБ рдХрд╣рд╛рдБ рд░рд╣реЗрдВрдЧреЗ?

рдЬрд╝рд░реВрд░! рдЕрдЧрд░ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдмрдВрдж рдХрд░рдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ, рддреЛ рдмрд╕ рдЖрдЧреЗ рдмрдврд╝реЗрдВред

рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ рдпрджрд┐ рдЯрд╛рдЗрдкрдкреНрд░рддрд┐ рдХрд╛ рд╕рдорд░реНрдерди рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ.. рдореИрдВ рдХреИрд╕реЗ рдорджрдж рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ?

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

@harange рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЕрдЪреНрдЫрд╛ рдХрд╛рдо рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдпрд╣ рдХрд╛рдлреА рддреИрдпрд╛рд░ рджрд┐рдЦрддрд╛ рд╣реИ .. рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдХреБрдЫ рдХреНрд╖реЗрддреНрд░реЛрдВ рдореЗрдВ рдХреБрдЫ рдзреНрдпрд╛рди рджреЗрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИ, рдХреБрдЫ рдмреБрдирд┐рдпрд╛рджреА рдкреНрд▓рдЧрдЗрдиреНрд╕ рдЬреИрд╕реЗ рдкреНрд░рдорд╛рдгреАрдХрд░рдг, рдкреНрд░рджрд╛рддрд╛ (рдмрд╛рдХреА, socke.io, рдкреНрд░рд╛рдЗрдорд╕) рдФрд░ рдХреБрдЫ рдбреАрдмреА рдПрдбрд╛рдкреНрдЯрд░ рд╕рд╣реА рд╢рд╛рдорд┐рд▓ рд╣реЛрдВрдЧреЗ? рдХреГрдкрдпрд╛ рдЙрдиреНрд╣реЗрдВ рд╡рд┐рддрд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд╕рд░реНрд╡реЛрддреНрддрдо рддрд░реАрдХреЗ рд╕реЗ рдЖрдкрдХрд╛ рдХреНрдпрд╛ рдорддрд▓рдм рд╣реИ?

рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рд╣рдордиреЗ рдЕрднреА рддрдХ рдЗрд╕ рдкрд░ рдЪрд░реНрдЪрд╛ рдХреА рд╣реИ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдареАрдХ рд░рд╣реЗрдЧрд╛ рдпрджрд┐ рд╣рдо рдореБрдЦреНрдп рднрдВрдбрд╛рд░ рдореЗрдВ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкрд░рд┐рднрд╛рд╖рд╛рдУрдВ рдХреЛ рд╡рд┐рддрд░рд┐рдд рдХрд░рддреЗ рд╣реИрдВ, рдЬрдм рддрдХ рдХрд┐ рдЙрдиреНрд╣реЗрдВ рдмрдирд╛рдП рд░рдЦрдиреЗ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдЕрджреНрдпрддрд┐рдд рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рд╣реИред рддреЛ рдПрдХ рдмрд╛рд░ рдЬрдм рд╡реЗ рддреИрдпрд╛рд░ рд╣реЛ рдЬрд╛рддреЗ рд╣реИрдВ, рддреЛ рд╣рдо рдЗрд╕реЗ рдкрдВрдЦ 2.1 рд░рд┐рд▓реАрдЬ рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ (рдЬреЛ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдХреБрдЫ рдЪреЗрддрд╛рд╡рдирд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рднреА рд╢рд┐рдк рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рд╕реЗрд╡рд╛рдУрдВ рдореЗрдВ рдХреЙрд▓рдмреИрдХ v3 рдореЗрдВ рдмрд╣рд┐рд╖реНрдХреГрдд рд╣реЛ рдЬрд╛рдПрдВрдЧреЗ)ред

рдХреНрдпрд╛ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд▓рд┐рдП generator-feathers рдХрд╛ рдХреЛрдИ рдХрд╛рдВрдЯрд╛ рд╣реИ? рдЬрдирд░реЗрдЯрд░ рдХреЗ TS рдлреЛрд░реНрдХ рдкрд░ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рдЗрдЪреНрдЫреБрдХ рд╣реИрдВ?

рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ: рдореИрдВрдиреЗ рдЬрдирд░реЗрдЯрд░ рдХреЛ рдлреЛрд░реНрдХ рдХрд┐рдпрд╛ рдФрд░ рдкрд╣рд▓реА рдкреНрд░рддрд┐рдмрджреНрдзрддрд╛ рдХреЛ рдзрдХреНрдХрд╛ рджрд┐рдпрд╛ред

рддреЛ @harangue рдиреЗ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА https://gist.github.com/harange/9d4ed79118e2656f5e3d2d699296ed36 рдореЗрдВ рдкрдВрдЦ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкрд░рд┐рднрд╛рд╖рд╛рдУрдВ рдХрд╛ рдПрдХ рдмрдбрд╝рд╛ рд╕реЗрдЯ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рд╣реИ, рд╣рдореЗрдВ рдмрд╕ рдХрд┐рд╕реА рдХреА рд╕рдореАрдХреНрд╖рд╛ рдХрд░рдиреЗ рдФрд░ рд╕рдВрднрд╛рд╡рд┐рдд рд░реВрдк рд╕реЗ рдЙрдиреНрд╣реЗрдВ рдЕрдВрддрд┐рдо рд░реВрдк рджреЗрдиреЗ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкрд░рд┐рднрд╛рд╖рд╛рдУрдВ рдХреЗ рднрдВрдбрд╛рд░ рдореЗрдВ рдЬрдорд╛ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рдореИрдВ рдФрдХ рд░рд┐рд▓реАрдЬ рдХреЗ рдЗрд╕ рд╣рд┐рд╕реНрд╕реЗ рдХреЛ рдмрдирд╛рдиреЗ рдЬрд╛ рд░рд╣рд╛ рд╣реВрдВ рдЬреЛ рд╕рд╛рд▓ рдХреЗ рдЕрдВрдд рд╕реЗ рдкрд╣рд▓реЗ рд░рд┐рд▓реАрдЬ рд╣реЛрдЧреАред рдпрджрд┐ рддрдм рддрдХ рдХреЛрдИ рднреА рдХрджрдо рдирд╣реАрдВ рдЙрдард╛рддрд╛ рд╣реИ рддреЛ рдпрд╣ рдореБрджреНрджрд╛ рд╣рдореЗрд╢рд╛ рдХреЗ рд▓рд┐рдП рдмрдВрдж рд╣реЛ рдЬрд╛рдПрдЧрд╛ рдФрд░ рдкреВрд░реА рдмрд╛рдд рдХреЗ рд▓рд┐рдП рдкреБрд▓ рдЕрдиреБрд░реЛрдз рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдХреЛрдИ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕рдорд░реНрдерди рдпрд╛ рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдФрд░ рдЪрд░реНрдЪрд╛ рдирд╣реАрдВ рд╣реЛрдЧреАред

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

рд╡реЗ npm i @types/feathers рдорд╛рдзреНрдпрдо рд╕реЗ рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░рдиреЗ рдпреЛрдЧреНрдп рд╣реЛрдВрдЧреЗред рдЕрдм рдЖрдкрдХреЛ typings рдЬреИрд╕реА рдЪреАрдЬрд╝реЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред

рдореБрдЭреЗ рд▓рдЧрд╛ рдХрд┐ рдЖрдк рдЙрдиреНрд╣реЗрдВ рдХреЗрд╡рд▓ https://github.com/DefinitelyTyped/DefinitelyTyped рдореЗрдВ рдЬреЛрдбрд╝ рджреЗрдВ

рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЯрд╛рдЗрдк рдХрд┐рдП рдЧрдП рдПрдлрдПрдХреНрдпреВ рд╕реЗ:

рдЯрд╛рдЗрдк -2.0 рд╢рд╛рдЦрд╛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдЯрд╛рдЗрдк-рдкреНрд░рдХрд╛рд╢рдХ рдХреЗ рд▓рд┐рдП рдПрдирдкреАрдПрдо рдкрд░

рдпрд╣ рдирд╣реАрдВ рдкрддрд╛ рдерд╛ред рддреЛ рдЙрдиреНрд╣реЗрдВ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЯрд╛рдЗрдк рдХрд┐рдП рдЧрдП рдореЗрдВ рдЬреЛрдбрд╝рдирд╛ рдкрд░реНрдпрд╛рдкреНрдд рд╣реЛрдЧрд╛ред

рдЖрд╣, рдЬреЗрдПрд╕ред рдЖрдк рдПрдХ рдпрд╛ рджреЛ рдорд╣реАрдиреЗ рдХреЗ рд▓рд┐рдП рдЪрд▓реЗ рдЧрдП рдФрд░ рдкрд╛рд░рд┐рд╕реНрдерд┐рддрд┐рдХреА рддрдВрддреНрд░ рд╡рд┐рдХрд╕рд┐рдд рд╣реЛ рдЧрдпрд╛: рдореБрд╕реНрдХрд╛рди:

рдХреНрд╖рдорд╛ рдХрд░реЗрдВ рдХрд┐ рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдореЗрд░реА рдУрд░ рд╕реЗ рдЗрддрдиреЗ рд▓рдВрдмреЗ рд╕рдордп рд╕реЗ рд░реЗрдбрд┐рдпреЛ рдореМрди рд╣реИред рдореИрдВрдиреЗ рдЖрдЬ рд╣реА рд╕рд╛рд░ рдХрд╛ рдПрдХ рдФрд░ рд╕рдВрд╢реЛрдзрди рдЬрд╛рд░реА рдХрд┐рдпрд╛ рд╣реИ рдЬреЛ рдкреБрд░рд╛рдиреЗ рдЯрд╛рдЗрдкрд┐рдВрдЧ рдХреЗ рд╕рд╛рде рдХреБрдЫ рд╕рдорд╕реНрдпрд╛ рдХреЛ рдареАрдХ рдХрд░рддрд╛ рд╣реИред рдореИрдВ рдЕрдВрдд рдореЗрдВ рдЕрдкрдиреА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдкрд░ рдлрд┐рд░ рд╕реЗ рдкрдВрдЦ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реВрдВ, рдФрд░ рдореИрдВ рдХрдо рд╕реЗ рдХрдо рдЙрди рдореЙрдбреНрдпреВрд▓ рдХреЗ рд▓рд┐рдП рдЯрд╛рдЗрдкрд┐рдВрдЧ рдЬреЛрдбрд╝рдиреЗ рдХреА рдЙрдореНрдореАрдж рдХрд░рддрд╛ рд╣реВрдВ рдЬрд┐рдиреНрд╣реЗрдВ рдореИрдВ рдЦреБрдж рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рдкрд╛рддрд╛ рд╣реВрдВред

рдкрд░рд┐рднрд╛рд╖рд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдпрд╣ рд╕рд╛рд░ рдореЗрдВ рдореМрдЬреВрдж рд╣реИ 1 рдХреЛ рдЫреЛрдбрд╝рдХрд░ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЯрд╛рдЗрдк рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░рд╕реНрддреБрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реИ) рдЯрд╛рдЗрдкрд┐рдВрдЧ рдкрд░реАрдХреНрд╖рдг (рдХреЗрд╡рд▓ рдкрдВрдЦ рдбреЙрдХреНрд╕ рд╕реЗ рдХреБрдЫ рдЙрджрд╛рд╣рд░рдг рдЦреАрдВрдЪрдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ) рдФрд░ 2) рдЬреЗрдПрд╕ рдбреЙрдХреНрдЯрд░ рдПрдиреЛрдЯреЗрд╢рди (рдЬреЛ рдЗрдВрдЯреЗрд▓рд┐рдЬреЗрдВрд╕ рдХреЗ рд▓рд┐рдП рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛, рд▓реЗрдХрд┐рди рд╣реИрдВ рдЬрд╝рд░реВрд░реА рдирд╣реАрдВ)ред

рддрдХрдиреАрдХреА рд░реВрдк рд╕реЗ рд╣реБрдХ рдЯрд╛рдЗрдкрд┐рдВрдЧ рдХреЛ рдкрдВрдЦ-рд╣реБрдХ рдореЗрдВ рднреА рдирд┐рдХрд╛рд▓рд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрд╣рд╛рдВ рдЯрд╛рдЗрдкрд┐рдВрдЧ рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдереЛрдбрд╝рд╛ рдЧрдбрд╝рдмрдбрд╝ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ uberproto рдореЗрдВ рдХреБрдЫ рдорд┐рд╢реНрд░рд┐рдд рдкреИрдЯрд░реНрди рд╣реЛрддреЗ рд╣реИрдВ рдЬреЛ рд╕реНрдерд┐рд░ рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЗ рд╕рд╛рде рджреЛрд╣рд░рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдереЛрдбрд╝рд╛ рдЪреБрдиреМрддреАрдкреВрд░реНрдг рд╣реЛрддреЗ рд╣реИрдВред

рдЖрдкрдХреЛ @harangue рд╡рд╛рдкрд╕ рдкрд╛рдХрд░ рдЕрдЪреНрдЫрд╛ рд▓рдЧрд╛ред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдо рдЕрднреА рдХреЗ рд▓рд┐рдП рдпрд╣рд╛рдВ рд╣реБрдХ рдЯрд╛рдЗрдкрд┐рдВрдЧ рдЫреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рд╣рдо рд╣реБрдХ рдХреЛ рдХреЛрд░ рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рдмрдирд╛рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛ рд░рд╣реЗ рд╣реИрдВ (рджреЗрдЦреЗрдВ #408)ред рд╕рд╛рде рд╣реА рдЯрд╛рдЗрдкрд┐рдВрдЧ рдХреЛ рдирдИ .hooks рдкрджреНрдзрддрд┐ рдХреЗ рд╕рд╛рде рдЕрдкрдбреЗрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИ рдЬреИрд╕рд╛ рдХрд┐ https://blog.phersjs.com/phers-application-and-error-hooks-7a5982e70024 рдореЗрдВ рд╡рд░реНрдгрд┐рдд рд╣реИ (рдЕрднреА рддрдХ рдкреНрд░рд▓реЗрдЦрд┐рдд рдирд╣реАрдВ рд╣реИ, рдЗрд╕ рдкрд░ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИ) :)ред

@harange рдЖрдкрдХреЛ рдХрдм рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЯрд╛рдЗрдк рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдкрдиреЗ рдкреНрд░рдХрд╛рд░ рдЬрдорд╛ рдХрд░реЗрдВрдЧреЗ?

рд╣реЗ рд╕рдм рд▓реЛрдЧ, рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдбреАрдлрд╝ рдХреЛ рд╕рд╛рде рдЖрддреЗ рджреЗрдЦрдирд╛ рд╡рд╛рдХрдИ рдЕрдЪреНрдЫрд╛ рд╣реИред @harangue , рдЖрдкрдХреЗ рдЬрд┐рд╕реНрдЯ рдореЗрдВ defs рдХреЗ рд╕рд╛рде рд╕рдВрдпреЛрдЬрди рдХреЗ рд░реВрдк рдореЗрдВ рдкрдВрдЦ рдЖрдпрд╛рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдкрдХреА рдХреНрдпрд╛ рд╕рд┐рдлрд╛рд░рд┐рд╢ рд╣реИ? рд╡реЗ рдирд╛рдорд╕реНрдерд╛рди рдирд┐рд░реНрдпрд╛рдд рдирд╣реАрдВ рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдЬреЛ feathers рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рд╕реЗ рдореЗрд▓ рдЦрд╛рддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП import ... from 'feathers' рдПрдХ рддреНрд░реБрдЯрд┐ рдлреЗрдВрдХрддрд╛ рд╣реИред

рдЕрд░реЗ @subvertallchris , рдЖрдк рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ

import * as feathers from 'feathers';`

рдпрд╛

import feathers = require('feathers');

рд╡реЗ рд╕рдордХрдХреНрд╖ рд╣реИрдВред :) рдмрд╕ рдЬрдм рдореБрдЭреЗ рд▓рдЧрд╛ рдХрд┐ рдореБрдЭреЗ рдлрд┐рд░ рд╕реЗ рдлреЗрджрд░реНрд╕ рдХреЗ рд▓рд┐рдП рд╕рдордп рдорд┐рд▓ рд░рд╣рд╛ рд╣реИ, рддреЛ рдореИрдВ рдЕрдиреНрдп рдЪреАрдЬреЛрдВ рдореЗрдВ рдлрдВрд╕ рдЧрдпрд╛, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдирдП рд╕рд╛рд▓ рддрдХ рдЗрди рдкрд░рд┐рднрд╛рд╖рд╛рдУрдВ рдХреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рдорд╛рдкреНрдд рдХрд░ рджрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред

@ j2L4e рдЖрдкрдХрд╛ TS рдЬрдирд░реЗрдЯрд░ рдХрд╛рдВрдЯрд╛ @harangue рдЖрдк рдХреИрд╕реЗ рдЪрд▓ рд░рд╣реЗ рд╣реИрдВ? рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕ рднреВрдорд┐ рдХреЛ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдЙрддреНрд╕реБрдХ рд╣реВрдВ рдФрд░ рдЯреАрдПрд╕ рдкрд░рд┐рднрд╛рд╖рд╛ рдлрд╛рдЗрд▓реЛрдВ рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдореЗрдВ рдорджрдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЦреБрд╢ рд╣реВрдВ, рдПрдХ feathers generate --ts рдзреНрд╡рдЬ рдХреЗ рд╕рд╛рде рдПрдХ рдХрд╛рдВрдЯрд╛ рдЬрд┐рд╕рд╕реЗ рдХреНрд▓реА рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдпрд╛ рдбреЙрдХреНрд╕ рдХреЗ рд╕рд╛рде рдЦреЗрд▓ рд╕рдХреЗред рдореБрдЭреЗ рдмрддрд╛рдУред

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

рдирдП рдХреНрд▓рд┐рдХ рдХреЗ рд░рд┐рд▓реАрдЬ рд╣реЛрдиреЗ рдХрд╛ рдмреЗрд╕рдмреНрд░реА рд╕реЗ рдЗрдВрддрдЬрд╛рд░

Am 19. рджрд┐рд╕рдореНрдмрд░ 2016 14:41:42 MEZ, schrieb georgeedwards [email protected] :

@ j2L4e рдЖрдкрдХрд╛ TS рдЬрдирд░реЗрдЯрд░ рдХрд╛рдВрдЯрд╛
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, @harangue рдЖрдк рдХреИрд╕реЗ рдЪрд▓ рд░рд╣реЗ рд╣реИрдВ? рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕реЗ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдЙрддреНрд╕реБрдХ рд╣реВрдВ
рднреВрдорд┐ рдФрд░ рдЯреАрдПрд╕ рдкрд░рд┐рднрд╛рд╖рд╛ рдлрд╛рдЗрд▓реЛрдВ рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдореЗрдВ рдорджрдж рдХрд░рдиреЗ рдореЗрдВ рдореБрдЭреЗ рдЦреБрд╢реА рд╣реИ, a
рдПрдХ feathers generate --ts рдзреНрд╡рдЬ рдХреЗ рд╕рд╛рде рдХрд╛рдВрдЯрд╛ рдХреЗ рд╕рд╛рде рдХреНрд▓реА рдЦреЗрд▓рдиреЗ рдХреЗ рд▓рд┐рдП
рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдпрд╛ рдбреЙрдХреНрд╕ред рдореБрдЭреЗ рдмрддрд╛рдУред

--
рдЖрдк рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рдЗрд╕ рдИрдореЗрд▓ рдХрд╛ рд╕реАрдзреЗ рдЙрддреНрддрд░ рджреЗрдВ рдпрд╛ рдЗрд╕реЗ GitHub рдкрд░ рджреЗрдЦреЗрдВ:
https://github.com/feedsjs/phers/issues/381#issuecomment -267966376

рдХреНрдпрд╛ рдХреЛрдИ рдЕрднреА рднреА рдЗрд╕ рдореБрджреНрджреЗ рдкрд░ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИ? рдореИрдВ рдЯрд╛рдЗрдкрдкреНрд░рддрд┐ рдХреЗ рд╕рд╛рде рдЗрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдмрд╣реБрдд рдкрд╕рдВрдж рдХрд░реВрдВрдЧрд╛

рд╕рднреА рдХреЛ рдирдорд╕реНрдХрд╛рд░

рдореБрдЭреЗ рдпрд╣ рдХрд╣рддреЗ рд╣реБрдП рдЦреБрд╢реА рд╣реЛ рд░рд╣реА рд╣реИ: _рдпрд╣ рд▓рдЧрднрдЧ рд╣реЛ рдЪреБрдХрд╛ рд╣реИред_
рдореИрдВрдиреЗ FeatherjsOrg рдореЗрдВ рдХрдИ рдХрд╛рдВрдЯреЗ рдмрдирд╛рдП рд╣реИрдВ рдФрд░ рд░реЗрдкреЛ рджреНрд╡рд╛рд░рд╛ рдкрд░рд┐рднрд╛рд╖рд╛рдПрдБ рд▓рд┐рдЦреА рд╣реИрдВред рдФрд░ рдЖрдк рдЗрд╕ рдирдореВрдиреЗ рдХреЛ рд╕рд░реНрд╡реЛрддреНрддрдо рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкрд░рд┐рднрд╛рд╖рд╛рдУрдВ рдХреЗ рд╕рд╛рде рдкрдВрдЦрдЬ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ

рдкрдВрдЦ+рдиреЛрдбрдЬ+рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ
рдлреЗрджрд░реНрд╕ рдХреНрд▓рд╛рдЗрдВрдЯ+рдСрд░реЗрд▓рд┐рдпрд╛+рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ

[рд╣рд╛рдБ, рдпрд╣ ESNext, Commonjs, AMD рдФрд░ рд╡реИрд╢реНрд╡рд┐рдХ рдореЙрдбреНрдпреВрд▓ рд╕реЗ рд▓реЗрдХрд░ рдХреНрд▓рд╛рдЗрдВрдЯ рдЪрдВрдХреНрд╕ рддрдХ рдХреЛ рд╕рдкреЛрд░реНрдЯ рдХрд░рддрд╛ рд╣реИ]

рдСрд░реЗрд▓рд┐рдпрд╛ рдирдореВрдирд╛ рдЖрдкрдХреЛ рд╕реБрд░рд╛рдЧ рджреЗрддрд╛ рд╣реИ рдХрд┐ рдХреЛрдгреАрдп 2 рдХреЗ рд╕рд╛рде рдХреИрд╕реЗ рдХрд╛рдо рдХрд┐рдпрд╛ рдЬрд╛рдПред рдЗрди рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдореЗрдВ рдХрдИ рд╡рд┐рд╡рд░рдг рд╣реИрдВ рдХрд┐ рдХреИрд╕реЗ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдПрдХ рд▓рд╛рдЗрд╡ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧреА рд╣реЛ рд╕рдХрддрд╛ рд╣реИ

рдореИрдВ рдЬрд▓реНрдж рд╣реА рдкреАрдЖрд░ рдХрд░реВрдВрдЧрд╛, рд▓реЗрдХрд┐рди рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рд╕рд╡рд╛рд▓ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдореБрдЭреЗ рдлреАрдбрдмреИрдХ рджреЗ рд╕рдХрддреЗ рд╣реИрдВред ?

рдкрд░рд┐рднрд╛рд╖рд╛рдУрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдВрдЯрд╛:

рдореЗрд░реЗ рдкрд╛рд╕ рдереЛрдбрд╝рд╛ рдХрд╛рдо рдерд╛, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдкрдВрдЦ рдФрд░ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкрд╕рдВрдж рд╣реИ

рд╡рд╣ рд╕рдм рд╕рд╛рдкреЗрдХреНрд╖ рд▓рд┐рдВрдХ рд╣реИ

рдореИрдВрдиреЗ рд▓рд┐рдВрдХ рддрдп рдХрд┐рдПред

@AbraaoAlves рдпрд╣ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд▓рдЧ рд░рд╣рд╛ рд╣реИ, рдзрдиреНрдпрд╡рд╛рдж! рдореИрдВ рдмрд╕ рдПрдХ рднрджреНрджреА рдЯрд┐рдкреНрдкрдгреА рд▓рд┐рдЦрдиреЗ рдФрд░ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдмрдВрдж рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ рдерд╛ рдФрд░ рдореБрдЭреЗ рдЦреБрд╢реА рд╣реИ рдХрд┐ рдЖрдкрдиреЗ рдкрд╣рд▓реЗ рдЯрд┐рдкреНрдкрдгреА рдХреА рдкреБрд▓ рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЛ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдЙрддреНрд╕реБрдХ!

рдЕрдЪреНрдЫрд╛ рдЖрджрдореА @AbraaoAlves !

@AbraaoAlves рдореИрдВ рдмрд╕ рдЗрддрдирд╛ рдХрд╣рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛, рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдП рдмрд╣реБрдд рдмрдбрд╝реА рдорджрдж рд╣реИ! рдореБрдЭреЗ рд╡рд┐рд╢реНрд╡рд╛рд╕ рдирд╣реАрдВ рд╣реЛ рд░рд╣рд╛ рд╣реИ рдХрд┐ рдЖрдк рдЕрдВрддрд┐рдо рдХреНрд╖рдг рдореЗрдВ рдЖ рдЧрдП рд╣реИрдВ

@AbraaoAlves рдореБрдЭреЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЖрдкрдХреА рдХрд┐рд╕реА рднреА рдкрд░рд┐рднрд╛рд╖рд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдореЗрдВ рдкрд░реЗрд╢рд╛рдиреА рд╣реЛ рд░рд╣реА рд╣реИред рдЬрдм рдореИрдВ package.json рдореЗрдВ рд╕рдВрдХреБрд▓ рдХреЛ рд╕рдВрд╕реНрдерд╛рдкрд┐рдд рдХрд░рддрд╛ рд╣реВрдБ рдЬреИрд╕реЗ

"feathers-errors": "^2.5.0",

"feathers-authentication": "^0.7.12",

"feathers-configuration": "^0.3.3",

"feathers": "https://[email protected]/AbraaoAlves/feathers.git#definition",

"feathers-hooks": "git://github.com/AbraaoAlves/feathers-hooks.git#definition",

"feathers-mongoose": "^3.6.2",

"feathers-rest": "git://github.com/AbraaoAlves/feathers-rest.git#definition",

"feathers-socketio": "git://github.com/AbraaoAlves/feathers-socketio.git#definition"`

рддреЛ рдЬрдм рдореИрдВ рдЗрд╕реЗ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддрд╛ рд╣реВрдВ рдЬреИрд╕реЗ рдХрд┐:

import * as feathers from "feathers"

рдпрд╣ рд╕рдВрдХрд▓рди рдкрд╛рд╕ рдХрд░рддрд╛ рд╣реИ рд▓реЗрдХрд┐рди рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдареАрдХ рд╕реЗ рдирд╣реАрдВ рдЪрд▓рддрд╛ рд╣реИред

рд╡реЗ рдХреЗрд╡рд▓ рдкреНрд░рдХрд╛рд░ рдХреА рдкрд░рд┐рднрд╛рд╖рд╛рдПрдБ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддреЗ рд╣реИрдВ, рд╕реНрд░реЛрдд рдирд╣реАрдВред рдРрд╕рд╛ рднреА рдкреНрд░рддреАрдд рд╣реЛрддрд╛ рд╣реИ рдХрд┐ рдкрдВрдЦ-рдмрд╛рдХреА рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдкрд╣рдЪрд╛рдирдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдлрд╝рдВрдХреНрд╢рди рдирд┐рд░реНрдпрд╛рдд рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ
rest()' as a valid command for app.use(rest());

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдПрдХ рдФрд░ рдореБрджреНрджрд╛, рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ app.use рдЕрдм рддрд░реНрдХреЛрдВ рдХреЛ рд╕реНрд╡реАрдХрд╛рд░ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ рдЬреИрд╕реЗ рдХрд┐
this.app.use(bodyParser.json());

рдФрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП

this.app.use(bodyParser.json() as any);

@Chrisdf рдореИрдВ рдЗрд╕реЗ package.json рдореЗрдВ tgz рдлрд╛рдЗрд▓реЛрдВ рдХреЗ рд╕рд╛рде рдареАрдХ

рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА: рдореБрджреНрджрд╛

@AbraaoAlves рдХреНрдпрд╛ рдХреЛрдИ рдХрд╛рд░рдг рд╣реИ рдХрд┐ рдЖрдк рдкрд░рд┐рднрд╛рд╖рд╛рдУрдВ рдХреЛ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ @types рдиреЗрдорд╕реНрдкреЗрд╕ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЙрдкрд▓рдмреНрдз рд╣реЛрдВрдЧреЗ рдФрд░ рдпрд╣ рдХреЛрд░ рдЯреАрдо рдХреЗ рд▓рд┐рдП рд░рд┐рд▓реАрдЬ рдХреЗ рд╣рд┐рд╕реНрд╕реЗ рдХреЗ рд░реВрдк рдореЗрдВ рдкрд░рд┐рднрд╛рд╖рд╛рдУрдВ рдХреЛ рдЕрджреНрдпрддрд┐рдд рд░рдЦрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЛ рд╣рдЯрд╛ рджреЗрдЧрд╛ред

@AbraaoAlves рд╡реИрд╕реЗ, рдкрд░рд┐рднрд╛рд╖рд╛рдУрдВ рдХреЛ рдкреНрд░рддрд┐рдмрджреНрдз рдХреНрдпреЛрдВ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдмрд▓реНрдХрд┐ рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рдЯреИрд░рдмреЙрд▓ рд░рд┐рд▓реАрдЬ рдХреЗ рд░реВрдк рдореЗрдВ рдкреЛрд╕реНрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛? рд╡реЗ рдЗрд╕ рддрд░рд╣ typings рд▓рд┐рдП рдЕрдзрд┐рдХ рдЙрдкрд▓рдмреНрдз рд╣реЛрдВрдЧреЗред рдореИрдВ рдЗрд╕ рдкреНрд░рдпрд╛рд╕ рдХреА рдЕрддреНрдпрдзрд┐рдХ рд╕рд░рд╛рд╣рдирд╛ рдХрд░рддрд╛ рд╣реВрдВ рдФрд░ рд╕рд╣рдордд рд╣реВрдВ рдХрд┐ рдкрд░рд┐рднрд╛рд╖рд╛рдУрдВ рдХреЛ рдкреНрд░рдпреЛрдЧ рдХрд░рдиреЗ рдпреЛрдЧреНрдп рд░реВрдк рдореЗрдВ рд╕рдореБрджрд╛рдп рддрдХ рдкрд╣реБрдВрдЪрд╛рдирд╛ рдлрд╛рдпрджреЗрдордВрдж рд╣реЛрдЧрд╛, рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЯрд╛рдЗрдк рдХрд┐рдпрд╛ рдЧрдпрд╛ рдПрдХ рдЕрдЪреНрдЫрд╛ рдХрджрдо рд╣реЛрдЧрд╛ред

рдореИрдВрдиреЗ @AbraaoAlves рдФрд░ @harangue рджреЛрдиреЛрдВ рдХреЗ рдХрд╛рдо рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдЯрд╛рдЗрдкрд┐рдВрдЧ рдХреЛ рдлрд┐рд░ рд╕реЗ рд▓рд┐рдЦрд╛ рд╣реИред рдореИрдВ рдЗрди рдЯрд╛рдЗрдкрд┐рдВрдЧ рдХреЛ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рд╢реАрдШреНрд░ рд╣реА рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЯрд╛рдЗрдк рдХрд░ рджреВрдВрдЧрд╛ред

рдардВрдбрд╛ред рдЗрд╕рдХреЗ рд▓рд┐рдП рд╣рдо рдХреБрдЫ рднреА рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ/рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП? рдЕрдиреНрдпрдерд╛ рдореИрдВ рдпрд╣ рдорд╛рди рд░рд╣рд╛ рд╣реВрдВ рдХрд┐ рдПрдХ рдмрд╛рд░ рдЪреАрдЬреЛрдВ рдХреЛ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЯрд╛рдЗрдк рдХрд┐рдП рдЬрд╛рдиреЗ рдХреЗ рдмрд╛рдж рд╣рдо рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдмрдВрдж рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ?

рдЗрд╕ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ package.json
(рдХрдо рд╕реЗ рдХрдо рдпрд╣ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рдорд╛рдорд▓рд╛ рд╣реЛрдЧрд╛)

рдЙрджрд╛рд╣рд░рдг: package.json рдореЗрдВ рдлрд╝рд╛рдЗрд▓ рд╢рд╛рдорд┐рд▓ рд╣реИ

рд╣рд╛рдп рд╕рдм рдУ /
рдзреИрд░реНрдп рдФрд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред

@stevehipwell рдФрд░ @daffl : рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛтАЛтАЛрд╣реИ рдХрд┐ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкрд░рд┐рднрд╛рд╖рд╛ рдлрд╝рд╛рдЗрд▓ рдПрдХ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг, рдПрдХ рд▓рд╛рдЗрд╡ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рдХреА рддрд░рд╣ рд╣реИред рд▓реЗрдХрд┐рди рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рдЬреЛ рдХреЛрдб рдХреЗ рд╕рд╛рде рд╕рдВрд░реЗрдЦрд┐рдд рдирд╣реАрдВ рд╣реИ, рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рд╕реЗ рднреА рдмрджрддрд░ рд╣реИ!

рдореИрдВ @types рдФрд░ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЯрд╛рдЗрдк рдХреА рдЧрдИ рдкрд╣рд▓ рдХреЛ рдЬрд╛рдирддрд╛

рдЖрдЬ, рдпрджрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рд╣реА рд╕реНрдерд╛рди рдкрд░, рдПрдХ рд╣реА рд░рд┐рд▓реАрдЬ рдХреЗ рддрд╣рдд рджреЛрдиреЛрдВ рдХреЛ рдмрдирд╛рдП рд░рдЦрдиреЗ рдХрд╛ рдЕрд╡рд╕рд░ рд╣реИ, рддреЛ рд╕рдВрдЪрд╛рд░ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреА рдШрдЯрдирд╛рдПрдВ рдмрд╣реБрдд рдХрдо рд╣реЛрдВрдЧреА рдФрд░ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рд░рд┐рд▓реАрдЬ рджреНрд╡рд╛рд░рд╛ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рдкрд░рд┐рднрд╛рд╖рд╛рдПрдВ рд╣реЛрдВрдЧреА!

рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рдЙрджрд╛рд╣рд░рдг рдЖрдкрдХреА рдЕрдкрдиреА рдкрд░рд┐рднрд╛рд╖рд╛рдПрдБ рдмрдирд╛рдП рд░рдЦрддреЗ рд╣реИрдВ: рдСрд░реЗрд▓рд┐рдпрд╛ , рдкреНрд░реАрдПрдХреНрдЯ , ...

рдпрджрд┐ рд╕рднреА рд╕рд╣рдордд рд╣реИрдВ, рддреЛ рдпрд╣рд╛рдВ рдкреБрд▓рд░рдХреНрд╡реЗрдЯ рд▓рд┐рдВрдХ рд╣реИрдВ:

рдЯрд╛рдЗрдк-рдЯреЗрд╕реНрдЯ, рдСрдЯреЛрдореЗрд╢рди, рдЬреИрд╕реЗ рдФрд░ рднреА рдмрд╣реБрдд рдХреБрдЫ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╛рдо рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдЕрднреА рд╢реБрд░реБрдЖрдд рд╣реИред

рдЯрд╛рдЗрдкрдкреНрд░рддрд┐ S2 рдкрдВрдЦ рдЬреЗрдПрд╕!

рдирдорд╕реНрддреЗ,

рдореИрдВ @AbraaoAlves рд╕реЗ рд╕рд╣рдордд

рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рдкрд░рд┐рднрд╛рд╖рд╛рдУрдВ рдХреЛ рдкрд░рд┐рдпреЛрдЬрдирд╛ рд░рд┐рд▓реАрдЬ рдХреЗ рд╕рд╛рде рддрд╛рд▓рдореЗрд▓ рдореЗрдВ рд░рдЦрд╛ рдЧрдпрд╛ рд╣реИ, рдкрдВрдЦ рдЯреАрдо рд╕реЗ рдмреЗрд╣рддрд░ рдкрд╛рд░рджрд░реНрд╢рд┐рддрд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред рдЕрдм рддрдХ рдЕрдкрдиреА рдкрд░рд┐рднрд╛рд╖рд╛рдПрдБ рд▓рд┐рдЦрддреЗ рд╣реБрдП рдореИрдВ рдЕрдирд┐рд╢реНрдЪрд┐рдд рд╣реВрдБ рдХрд┐ рд░рд┐рд▓реАрдЬрд╝ рдХреА рд╡рд░реНрддрдорд╛рди рд╕реНрдерд┐рддрд┐ рдХреНрдпрд╛ рд╣реИ; рдмреНрд▓реЙрдЧ рдХреЛ рдЕрджреНрдпрддрд┐рдд рдирд╣реАрдВ рд░рдЦрд╛ рдЧрдпрд╛ рд╣реИ рдФрд░ рдХрдИ рдХреЛрдб рдирд╛рдо рд╣реИрдВ (v3, auk, buzzard ??) рдЬрд┐рд╕рдХрд╛ рдХреЛрдИ рдорддрд▓рдм рдирд╣реАрдВ рд╣реИред

@AbraaoAlves - рдЖрдкрдХреА рдкрд░рд┐рднрд╛рд╖рд╛рдПрдВ рдЕрдЪреНрдЫреА рджрд┐рдЦрддреА рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЬреЛ рдореИрдВ рджреЗрдЦ рд╕рдХрддрд╛ рд╣реВрдВ рдЙрд╕рдореЗрдВ hooks() рд╡рд┐рдзрд┐рдпреЛрдВ рдЬреИрд╕реЗ рдХреНрд╖реЗрддреНрд░ рдЧрд╛рдпрдм рд╣реИрдВред рдХреНрдпрд╛ рдЖрдк рдЗрдиреНрд╣реЗрдВ рдЗрд╕рдореЗрдВ рдЬреЛрдбрд╝рдиреЗ рдореЗрдВ рджрд┐рд▓рдЪрд╕реНрдкреА рд▓реЗрдВрдЧреЗ?

рд╣рд╛рдп @stevehipwell ,

рдкреНрд░рддрд┐рдкреБрд╖реНрдЯрд┐ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред рдФрд░ рдпрд╣рд╛рдБ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдореЗрд░реЗ рдЙрддреНрддрд░ рд╣реИрдВ:

рд╣рд╛рд▓рд╛рдВрдХрд┐, рд╕рдмрд╕реЗ рдЦрд░рд╛рдм рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдкрд░рд┐рднрд╛рд╖рд╛ рдлрд╝рд╛рдЗрд▓реЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ рдЬреЛ рдкреБрд░рд╛рдиреА рд╣реЛ рдЬрд╛рддреА рд╣реИрдВ ...
рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рдкрд░рд┐рднрд╛рд╖рд╛рдУрдВ рдХреЛ рдкрд░рд┐рдпреЛрдЬрдирд╛ рд░рд┐рд▓реАрдЬ рдХреЗ рд╕рд╛рде рддрд╛рд▓рдореЗрд▓ рдореЗрдВ рд░рдЦрд╛ рдЧрдпрд╛ рд╣реИ, рдкрдВрдЦ рдЯреАрдо рд╕реЗ рдмреЗрд╣рддрд░ рдкрд╛рд░рджрд░реНрд╢рд┐рддрд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА

рд╣рд╛рдВ, рд╕рдордиреНтАНрд╡рдпрди рд╕рдорд╕реНтАНрдпрд╛ рдПрдХ рд╡рд╛рд╕реНтАНрддрд╡рд┐рдХ рд╕рдорд╕реНтАНрдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдкрд░реАрдХреНрд╖рдгреЛрдВ рд╕реЗ рдЗрд╕реЗ рдареАрдХ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рдореИрдВ рдЯрд╛рдЗрдкрдкреНрд░рддрд┐ рдореЗрдВ рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдХрд╛ рд╕реБрдЭрд╛рд╡ рджреЗрддрд╛ рд╣реВрдВ: #508

рдЗрд╕ рд╕рдорд╛рдзрд╛рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕рд╣рдордд рд╣реИрдВ рдпрд╛ рдирд╣реАрдВ, рд╡рд╣рд╛рдВ рдЕрдкрдиреА рд░рд╛рдп рд▓реЗрдВред

рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдмрд┐рдирд╛ рдХрд┐рд╕реА рд╡рд┐рдШрдЯрдирдХрд╛рд░реА рдкрд░рд┐рд╡рд░реНрддрди рдХреЗ, рдкрдВрдЦрдЬ рдХреЛ рдПрдХ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЕрдиреБрдХреВрд▓ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░реЗрд░рд┐рдд рд╣реВрдВред
рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдХреБрдЫ рд╣реИ, рдЬреИрд╕реЗ hooks() рддрд░реАрдХреЗ, рд▓реЗрдХрд┐рди рдЕрдм рд╣рдо рдЗрд╕реЗ рдПрдХ рд╕рд╛рде рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВред

рдпрджрд┐ рдЖрдкрдХреЛ рдХреЛрдИ рдмрдЧ рджрд┐рдЦрд╛рдИ рджреЗрддрд╛ рд╣реИ рдпрд╛ рдХреЛрдИ рдкрд░рд┐рднрд╛рд╖рд╛ рдЫреВрдЯ рдЬрд╛рддреА рд╣реИ, рддреЛ рд╕рдорд╕реНрдпрд╛ рдмрдирд╛рдПрдВред

@AbraaoAlves рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдкрд░рд┐рднрд╛рд╖рд╛рдУрдВ рдХреЛ рдЕрджреНрдпрддрд┐рдд рд░рдЦрдиреЗ рдХреА рдЗрдЪреНрдЫрд╛ рд╣реИ рдФрд░ рдореБрдЭреЗ рдорджрдж рдХрд░рдиреЗ рдореЗрдВ рдЦреБрд╢реА рд╣реЛ рд░рд╣реА рд╣реИред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдХреЗ рдорд░реНрдЬ рдЕрдиреБрд░реЛрдз рдкреВрд░реНрдг рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж рдЖрдк рд▓рд╛рдкрддрд╛ рдкрд░рд┐рднрд╛рд╖рд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдореБрдЦреНрдп рд░реЗрдкреЛ рдкрд░ рдмрдЧ рдЙрдард╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ?

@stevehipwell рд╣рд╛рдБ, рдпрд╣ рдмрд╛рдд рд╣реИред

рд░рд┐рд▓реАрдЬрд╝ рд╢реЗрдбреНрдпреВрд▓ рдХреЗ рд╕рд╛рде рдХреНрдпрд╛ рд╕рдорд╕реНрдпрд╛ рд╣реИ рдФрд░ рдЗрд╕реЗ рдмреЗрд╣рддрд░ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдо рдХреНрдпрд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ? рдпрд╣рд╛рдБ рдХреЗ рдореАрд▓ рдХреЗ рдкрддреНрдерд░ рдЕрднреА рднреА рдореЛрдЯреЗ рддреМрд░ рдкрд░ рд╡рд╣реА рд╣реИрдВ рдЬреЛ рд╣рдо рдпреЛрдЬрдирд╛ рдмрдирд╛ рд░рд╣реЗ рд╣реИрдВ:

  • рдЕрдЧрд▓реА рд░рд┐рд▓реАрдЬрд╝ рдФрдХ рд╣реИ рдЬреЛ рдХреЛрдб рдкреВрд░реНрдг рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдЬрдирд░реЗрдЯрд░ рдХреЛ рдЕрдВрддрд┐рдо рд░реВрдк рджрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ рдФрд░ рдбреЙрдХреНрд╕ рдЕрдкрдбреЗрдЯ рдХрд┐рдП рдЬрд╛ рд░рд╣реЗ рд╣реИрдВред рдмреНрд░реЗрдХрд┐рдВрдЧ рдкрд░рд┐рд╡рд░реНрддрди рдкрдВрдЦ-рдкреНрд░рдорд╛рдгреАрдХрд░рдг v1.0.0 . рдореЗрдВ рд╣реИрдВ
  • рд░рд┐рд▓реАрдЬ рдХреЗ рдмрд╛рдж рдмрдЬрд╝рд░реНрдб рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдмреНрд░реЗрдХрд┐рдВрдЧ рдХреЛрд░ рдкрд░рд┐рд╡рд░реНрддрди рд╢рд╛рдорд┐рд▓ рд╣реЛрдВрдЧреЗ (рдЬреЛ рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХрднреА-рдХрднреА v3 рдХреЗ рд░реВрдк рдореЗрдВ рд╕рдВрджрд░реНрднрд┐рдд рдХрд░рддрд╛ рд╣реВрдВ - рдФрд░ рд╢рд╛рдпрдж ЁЯШЙ рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП):

    • рдлреНрд░реЗрдорд╡рд░реНрдХ рд╕реНрд╡рддрдВрддреНрд░рддрд╛ (https://github.com/phersjs/feeds/milestone/9) (рдФрд░ рдЗрд╕рдХреЗ рд╕рд╛рде рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЗ рд▓рд┐рдП рдПрдХ

    • рдореВрд▓ рдореЗрдВ рд╣реБрдХ

    • рдЪреИрдирд▓ рдЖрдзрд╛рд░рд┐рдд рдИрд╡реЗрдВрдЯ рдлрд╝рд┐рд▓реНрдЯрд░рд┐рдВрдЧ

рдЙрди рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреЗ рдЖрдиреЗ рдХреЗ рдмрд╛рдж рдкрд░рд┐рднрд╛рд╖рд╛рдУрдВ рдХреЛ рдЕрджреНрдпрддрди рдХрд░рдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреНрдпрд╛ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП?

рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкрд░рд┐рднрд╛рд╖рд╛рдПрдБ C++ рдореЗрдВ .h (рд╣реЗрдбрд░) рдХреА рддрд░рд╣ рд╣реИрдВред рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдПрдХ рд╣реЗрдбрд░ рд╣реИ рдЬреЛ рдЖрдкрдХреЗ рдореЙрдбреНрдпреВрд▓ рдХрд╛ рдЬрд╡рд╛рдм рдирд╣реАрдВ рджреЗрддрд╛ рд╣реИ, рддреЛ рд░рдирдЯрд╛рдЗрдо рдХреЗ рджреМрд░рд╛рди рдкрд░реЗрд╢рд╛рдиреА рд╣реЛ рд╕рдХрддреА рд╣реИ, рдЬреИрд╕реЗ рдХреЛрдИ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЧрдП рдХреЛрдб рдХреЗ рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд╕рд╛рде рд╕рдВрд░реЗрдЦрд┐рдд рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИред

рдЗрд╕рд▓рд┐рдП, рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛтАЛтАЛрд╣реИ рдХрд┐ рдкрд░рд┐рднрд╛рд╖рд╛рдУрдВ рдХреЛ рдкреНрд░рддреНрдпреЗрдХ рдореАрд▓ рдХреЗ рдкрддреНрдерд░ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП рдПрдкреАрдЖрдИ рдореЗрдВ рдмрджрд▓рд╛рд╡ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП: рдЕрдиреНрдп рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдореЗрдВ рдореВрд╡рд┐рдВрдЧ рдореЗрдердб рдпрд╛ рдПрдХ рдореЗрдердб рдореЗрдВ рдПрдХ рдирдпрд╛ рдкреИрд░рд╛рдореАрдЯрд░ рдЬреЛрдбрд╝рдирд╛, ...

рдореИрдВ v1 рдХреЗ рд╕рд╛рде рд╕рдВрд░реЗрдЦрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рд▓рд┐рдП рд╣реБрдХ рд╣рдЯрд╛рдХрд░, рдкрдВрдЦ-рдкреНрд░рдорд╛рдгреАрдХрд░рдг рдкрд░рд┐рднрд╛рд╖рд╛ рдмрджрд▓реВрдВрдЧрд╛ред
рдЕрдм рд╕рд╡рд╛рд▓ рдпрд╣ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдлреЗрджрд░рдЬреЗрдПрд╕ рдХреЗ рдЗрд╕ рдореМрдЬреВрджрд╛ рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рдкрд░рд┐рднрд╛рд╖рд╛рдУрдВ рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП?

@AbraaoAlves рдореБрдЭреЗ рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИред рдореИрдВ рдЖрдкрдХреЗ рд╕рднреА рдкреАрдЖрд░ рдХреЗ рд▓рд┐рдП рдПрдХ рдорд╛рдореВрд▓реА рд░рд┐рд▓реАрдЬ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ рдФрд░ рд╣рдо рд╡рд╣рд╛рдВ рд╕реЗ рдкреБрдирд░рд╛рд╡реГрддрд┐ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдХреЗрд╡рд▓ рдПрдХ рдЪреАрдЬ рдЬрд┐рд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдореИрдВ рдЕрднреА рднреА рд╕реЛрдЪ рд░рд╣рд╛ рд╣реВрдВ рд╡рд╣ рд╣реИ #508 рд▓реЗрдХрд┐рди рдореИрдВ рдЙрд╕ рдкрд░ рдЯрд┐рдкреНрдкрдгреА рдХрд░реВрдВрдЧрд╛ред

рдореБрдЭреЗ рдЙрдкрд░реЛрдХреНрдд рдЯрд╛рдЗрдкрд┐рдВрдЧ рдореЗрдВ рджреЛ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рдирд╛ рдкрдбрд╝ рд░рд╣рд╛ рд╣реИред

рд╕реЙрдХреЗрдЯрд┐рдпреЛ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ред

node_modules/feathers-socketio/index"' resolves to a non-module entity and cannot be imported using this construct.

рдФрд░ рдмрд╛рдХреА рдХреЗ рд▓рд┐рдП рдПрдХ рд╣реИрдВрдбрд▓рд░ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рднрд▓реЗ рд╣реА рдЖрдкрдХреЗ рдкрдВрдЦ-рдХреНрд▓реА рдмрд┐рдирд╛ рддрд░реНрдХ рдХреЗ рдЖрдЙрдЯрдкреБрдЯ рд╣реЛред

.configure(rest ()) // рдпрд╣рд╛рдВ рдПрд░рд░ рдлрдВрдХреНрд╢рди рд░реЗрд╕реНрдЯ рдШреЛрд╖рд┐рдд рдХрд░реЗрдВ (рд╣реИрдВрдбрд▓рд░: рдлрдВрдХреНрд╢рди): рдлрдВрдХреНрд╢рди;
рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВ (рд╕реЙрдХреЗрдЯрд┐рдпреЛ ())

рдиреЛрдб -v
v6.6.0

рдПрдирдкреАрдПрдо -рд╡реА
3.10.5

рдЯреАрдПрд╕рд╕реА -рд╡реА
2.1.6

рдпрд╣ рджрд┐рдЦрд╛рдирд╛ рднреА рджрд┐рд▓рдЪрд╕реНрдк рд╣реЛрдЧрд╛ рдХрд┐ рдореЙрдбреНрдпреВрд▓ рдХреЗ рд░реВрдк рдореЗрдВ "рдкрдВрдЦ ()" рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреИрд╕реЗ рдХрд░реЗрдВ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдкреНрд░рд╡реЗрд╢ рдмрд┐рдВрджреБ рд╣реИред
рдореИрдВ рдЕрдиреНрдп рд╕рднреА рдЬреЗрдирд░реЗрдЯ рдХреА рдЧрдИ рд╕реЗрд╡рд╛рдУрдВ/рдорд┐рдбрд▓рд╡реЗрдпрд░ рдХреЛ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ рд▓реЗрдХрд┐рди рдПрдХ рдЕрдЪреНрдЫрд╛ рддрд░реАрдХрд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдЬреЛ рдПрдХ рдХрдиреНрд╕реНрдЯреНрд░рдХреНрдЯрд░() {} рдореЗрдВ рдкрдВрдЦ() рдХреЛ рд╕рдорд╛рд╣рд┐рдд рдХрд░ рд╕рдХреЗред (рдореИрдВ рдкрдВрдЦреЛрдВ рдХреЗ рд▓рд┐рдП рдирдпрд╛ рд╣реВрдВ, рдореИрдВ рдЗрд╕реЗ рдЧрд▓рдд рднреА рдХрд░ рд░рд╣рд╛ рд╣реВрдВ ...)

рдХреНрдпрд╛ рд╣рдо рдкреИрдЪ рд░рд┐рд▓реАрдЬ рдХреЗ рд░реВрдк рдореЗрдВ рдкрд░рд┐рднрд╛рд╖рд╛рдПрдВ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ? рдкрд░рд┐рд╡рд░реНрддрди рдХрд╛ рдпрд╣ рд╕реНрддрд░ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдПрдХ рдкреИрдЪ рд░рд┐рд▓реАрдЬ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреБрдХреНрдд рд╣реЛрдЧрд╛; рдХреЛрдИ рдмреНрд░реЗрдХрд┐рдВрдЧ рдкрд░рд┐рд╡рд░реНрддрди рдирд╣реАрдВ рдФрд░ рдХреЛрдИ рдирдИ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдирд╣реАрдВред рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдЖрдВрд╢рд┐рдХ рдпрд╛ рдЧрд▓рдд рдЯрд╛рдЗрдкрд┐рдВрдЧ рднреА рдЯрд╛рдЗрдкрд┐рдВрдЧ рди рдХрд░рдиреЗ рд╕реЗ рдмреЗрд╣рддрд░ рд╣реИред

рдПрдХ рдмрд╛рд░ рдЬрдм рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рд░рд┐рд▓реАрдЬ рд╣реЛ рдЬрд╛рддреА рд╣реИ рддреЛ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рдХрд╛рд░реНрдпрд╢реАрд▓ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдмрд┐рдВрджреБ рд╣реЛрддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рд╣рдо рдЯрд╛рдЗрдкрд┐рдВрдЧ рдореЗрдВ рд╕реБрдзрд╛рд░ рдХреЗ рд▓рд┐рдП рд╡реГрджреНрдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдпрджрд┐ рдпрд╣ рд╕реНрдерд┐рд░ рд░рд╣рддрд╛ рд╣реИ рдФрд░ рдореЗрд░реА рдкрд░рд┐рднрд╛рд╖рд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЯрд╛рдЗрдк рдХрд┐рдП рдЧрдП рдорд╛рд░реНрдЧ рд╕реЗ рдиреАрдЪреЗ рдЬрд╛рдирд╛ рд╣реЛрдЧрд╛ред рдореИрдВ рдРрд╕рд╛ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рдФрд░ рдореБрдЭреЗ рд░реЗрдкреЛ рдореЗрдВ рдкрд░рд┐рднрд╛рд╖рд╛рдУрдВ рдХреЗ рд╕рд╛рде рдорджрдж рдХрд░рдиреЗ рдореЗрдВ рдЦреБрд╢реА рд╣реЛ рд░рд╣реА рд╣реИред

рдореЗрд░реЗ рдкрд╛рд╕ #508 рдореЗрдВ @AbraaoAlves рдХреЗ рд▓рд┐рдП рдПрдХ рдкреНрд░рд╢реНрди рдерд╛, рд▓реЗрдХрд┐рди рдЕрднреА рддрдХ рдХреЛрдИ рдЙрддреНрддрд░ рдирд╣реАрдВ рдорд┐рд▓рд╛ рд╣реИред рдпрджрд┐ рд╣рдо рд░рд┐рд▓реАрдЬрд╝ рдХрд░рддреЗ рд╣реИрдВ рддреЛ рд╣рдореЗрдВ рдХрд┐рд╕реА рдРрд╕реЗ рд╡реНрдпрдХреНрддрд┐ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ рдЬреЛ рдЖрдиреЗ рд╡рд╛рд▓реЗ рдХрд┐рд╕реА рднреА рдореБрджреНрджреЗ рдХреЛ рддреБрд░рдВрдд рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрд▓рдмреНрдз рд╣реЛ (рд╡рд┐рд╢реЗрд╖рдХрд░ рд╕рдмрд╕реЗ рдЦрд░рд╛рдм рд╕реНрдерд┐рддрд┐ рд╕реЗ рдпрд╣ рдореМрдЬреВрджрд╛ рдРрдкреНрд╕ рдХреЛ рддреЛрдбрд╝ рд╕рдХрддрд╛ рд╣реИ рдЬреЛ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ)ред рдХреНрдпрд╛ рд╣рдо рд░рд┐рд▓реАрдЬрд╝ рдХреЛ рдмрдирд╛рдиреЗ рдФрд░ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрдЪреНрдЫреЗ рд╕рдордп рдХреЗ рд▓рд┐рдП рд╕реНрд▓реИрдХ рдкрд░ рд╕рдордиреНрд╡рдп рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ (рд╣рдо рдПрдХ рдирд╛рдмрд╛рд▓рд┐рдЧ рд╕реЗ рд╢реБрд░реВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдкреВрд░реНрд╡)?

рдкреНрд░рддреНрдпреЗрдХ рдореЙрдбреНрдпреВрд▓ рдХреЗ рд▓рд┐рдП рдЫреЛрдЯреЗ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдореЗрдВ рдЬрд╛рд░реА рдХрд┐рдпрд╛ рдЧрдпрд╛

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

рдкреВрд░реЗ рдкрдВрдЦ + рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЪрд░реНрдЪрд╛ рд╕реЗ рдореЗрд░рд╛ рдореБрдЦреНрдп рдирд┐рд╖реНрдХрд░реНрд╖ рдпрд╣ рд╣реИ рдХрд┐ рдореМрдЬреВрджрд╛ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рд▓рд┐рдП рдЯрд╛рдЗрдкрд┐рдВрдЧ рдмрдирд╛рдирд╛ рдФрд░ рдмрдирд╛рдП рд░рдЦрдирд╛ рдмрд╣реБрдд рдХрдард┐рди рд▓рдЧрддрд╛ рд╣реИ (рдореЗрд░реЗ рд▓рд┐рдП рдЬреЛ рдЗрдВрдЯрд░рдСрдкрд░реЗрдмрд┐рд▓рд┐рдЯреА рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рджрд╛рд╡реЛрдВ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдмрд╛рдд рдирд╣реАрдВ рдХрд░рддрд╛ рдерд╛)ред рдЪреВрдВрдХрд┐ рдХреЛрд░ рдЯреАрдо рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд░рд╣реА рд╣реИ, рдЗрд╕рд▓рд┐рдП рдмреНрд░реЗрдХрд┐рдВрдЧ рдПрдкреАрдЖрдИ рдкрд░рд┐рд╡рд░реНрддрди рдЬрд╛рд░реА рдХрд░рддреЗ рд╕рдордп рдЖрдЧреЗ рдмрдврд╝рдиреЗ рдХрд╛ рд╣рдорд╛рд░рд╛ рдПрдХрдорд╛рддреНрд░ рд╡рд┐рдХрд▓реНрдк рдХрд┐рд╕реА рднреА рдкреБрд░рд╛рдиреА рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкрд░рд┐рднрд╛рд╖рд╛рдУрдВ рдХреЛ рд╣рдЯрд╛рдирд╛ рд╣реИред

рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЯрд╛рдЗрдк рдХрд┐рдП рдЧрдП рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдореЗрдВ рдкрдВрдЦ рдореЙрдбреНрдпреВрд▓ рдХреЗ рд▓рд┐рдП рдЕрдк-рдЯреВ-рдбреЗрдЯ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкрд░рд┐рднрд╛рд╖рд╛рдПрдВ рд╣реЛрдирд╛ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ рдФрд░ рд╣рдо рдРрд╕рд╛ рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рд░ рд╕рдВрднрд╡ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВрдЧреЗ рд▓реЗрдХрд┐рди рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдЙрдкрд▓рдмреНрдз рд╕реАрдорд┐рдд рд╕рдордп рдХреЗ рд╕рд╛рде рд╣рдо рдУрд╡рд░рд╣реЗрдб рдирд╣реАрдВ рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐рд╕реА рдРрд╕реА рдЪреАрдЬрд╝ рдХрд╛ рд╕рдорд░реНрдерди рдФрд░ рд░рдЦрд░рдЦрд╛рд╡ рдХрд░рдирд╛ рдЬрд┐рд╕реЗ рд╣рдо рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдореЗрдВ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВред

рдореЗрд░реЗ рд▓рд┐рдП рдЬреЛ рдЗрдВрдЯрд░рдСрдкрд░реЗрдмрд┐рд▓рд┐рдЯреА рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рджрд╛рд╡реЛрдВ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдмрд╛рдд рдирд╣реАрдВ рдХрд░рддрд╛ рдерд╛

рдкрдВрдЦ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЯрд╛рдЗрдкрд┐рдВрдЧ рдХреЗ рдмрд┐рдирд╛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдкреНрд░рдпреЛрдЧ рдХрд░рдиреЗ рдпреЛрдЧреНрдп рд╣реИ, рдпрд╣ рд╕рд┐рд░реНрдл рд╕рд╛рджрд╛ рдЬреЗрдПрд╕ рд╣реИ рддреЛ рдЗрдВрдЯреЗрд▓рд┐рдЬреЗрдВрд╕ рдФрд░ рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЗ рдмрд┐рдирд╛ред рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдлреЗрджрд░реНрд╕ рдкреНрд▓рдЧрдЗрди рд╕рд┐рд╕реНрдЯрдо рдорд┐рдХреНрд╕рд┐рди рдХреЗ рднрд╛рд░реА рдЙрдкрдпреЛрдЧ рдХреЗ рд╕рд╛рде рдЯрд╛рдЗрдкрд┐рдВрдЧ рдХреЛ рдХрдард┐рди рдмрдирд╛ рджреЗрддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЪреАрдЬреЛрдВ рдХреЛ рдХрд░рдиреЗ рдХрд╛ рдПрдХ рдмрд╣реБрдд рд╣реА рдЧреИрд░-рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рддрд░реАрдХрд╛ рд╣реИред рдореИрдВ рдПрдХ рдирд┐рдпрдорд┐рдд рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ (рдФрд░ рдЙрд╕рдХреЗ рдкреНрд░рд╢рдВрд╕рдХ) рд╣реВрдВ, рд▓реЗрдХрд┐рди рдЕрднреА рдХреЗ рд▓рд┐рдП рд╕рд░реНрд╡рд░-рд╕рд╛рдЗрдб рдкрдВрдЦ рд╕рд╛рдордЧреНрд░реА рдХреЗ рд▓рд┐рдП ES6 рдкрд░ рд╡рд╛рдкрд╕ рдЪрд▓рд╛ рдЧрдпрд╛ред
рдЕрд▓рдЧ-рдЕрд▓рдЧ рдкреНрд░рдХрд╛рд░ рдмрдирд╛рдП рд░рдЦрдирд╛ рдпрд╣рд╛рдВ рдмреЗрд╣рддрд░ рдЕрдиреБрдХреВрд▓ рддрд░реАрдХрд╛ рдкреНрд░рддреАрдд рд╣реЛрддрд╛ рд╣реИ, рдХреЛрд░ рдЯреАрдо рдореЗрдВ рдХреЛрдИ рднреА рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред

рдпрджрд┐ рдпрд╣ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд╕рд╛рде рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдЦреЗрд▓рд╛ рдЬрд╛рддрд╛ рд╣реИ рддреЛ рдкрдВрдЦ рдПрдВрдЧреБрд▓рд░ рдХреЗ рд▓рд┐рдП рдкрд╕рдВрджреАрджрд╛ рд╕рд░реНрд╡рд░ рд╕рд╛рдЗрдб рдлреНрд░реЗрдорд╡рд░реНрдХ рд╣реЛрдЧрд╛ред рдореИрдВ рддреЛ рдмрд╕ рдХрд╣ рд░рд╣рд╛ рд╣реВрдВ' :-)ред рдореИрдВ рдЕрднреА рдХреЗ рд▓рд┐рдП рдЖрдЧреЗ рдмрдврд╝ рд░рд╣рд╛ рд╣реВрдБред

@ j2L4e рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЕрдЧрд▓реА рд░рд┐рд▓реАрдЬ рдХреЗ рд▓рд┐рдП рдпрд╣ рдЖрд╕рд╛рди рд╣реЛ рдЬрд╛рдПрдЧрд╛ рдХреНрдпреЛрдВрдХрд┐ рдЕрдм рдЬреНрдпрд╛рджрд╛рддрд░ рдЪреАрдЬреЗрдВ рдЬреЛ рдкреНрд▓рдЧрдЗрдиреНрд╕ рджреНрд╡рд╛рд░рд╛ рдорд┐рд╢реНрд░рд┐рдд рд╣реИрдВ, рд╡реЗ рдХреЛрд░ рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рд╣реЛрдВрдЧреАред рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рд░реВрдк рд╕реЗ рдЗрд╕рдХреЗ рд╕рд╛рде рд╕рд╣рд╛рдпрддрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреА рд╕рд╛рдорд╛рдиреНрдп рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рдорд╛рдзрд╛рди рдХрд░реЗрдЧрд╛ред

@rjsteinert рдЗрд╕ рд╕рдордп рдЬреЛ рдХреБрдЫ рднреА рд╣реИ рд╡рд╣ рдЬреНрдпрд╛рджрд╛рддрд░ рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рд▓реЗрдХрд┐рди рд╣рд╛рдВ, рдХрд┐рд╕реА рднреА рдУрдкрди рд╕реЛрд░реНрд╕ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рд╕рд╛рде рдЖрдкрдХреЗ рдкрд╛рд╕ рдпрд╛ рддреЛ рдХреЛрд╢рд┐рд╢ рдХрд░рдиреЗ рдФрд░ рдорджрдж рдХрд░рдиреЗ рдпрд╛ рдЖрдЧреЗ рдмрдврд╝рдиреЗ рдХрд╛ рдореМрдХрд╛ рд╣реИред

рдЖрдкрдХреЗ рдкрд╛рд╕ рдпрд╛ рддреЛ рдХреЛрд╢рд┐рд╢ рдХрд░рдиреЗ рдФрд░ рдорджрдж рдХрд░рдиреЗ рдпрд╛ рдЖрдЧреЗ рдмрдврд╝рдиреЗ рдХрд╛ рдореМрдХрд╛ рд╣реИред

рдореИрдВ рдЙрди рд▓реЛрдЧреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рд╣реВрдВ рдЬреЛ рдПрдВрдЧреБрд▓рд░ рдХреЗ рд▓рд┐рдП рдирдП рд╣реИрдВ, рд▓рдВрдмреЗ рд╕рдордп рддрдХ рдЬреЗрдПрд╕ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░, рдпрд╣ рдорд╣рд╕реВрд╕ рдХрд░рддреЗ рд╣реБрдП рдХрд┐ рдЯреАрдПрд╕ рдЬреАрд╡рди рдХреЛ рдХрд┐рддрдирд╛ рднрд╡реНрдп рдмрдирд╛рддрд╛ рд╣реИ рдФрд░ рдпрд╣ рдорд╣рд╕реВрд╕ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдЕрдЧрд░ рд╣рдо рд╕рд░реНрд╡рд░ рд╕рд╛рдЗрдб рдкрд░ рдЗрд╕рдХреЗ рд╕рд╛рде рднреВрдорд┐рдХрд╛ рдирд╣реАрдВ рдирд┐рднрд╛рддреЗ рд╣реИрдВ рддреЛ рдЯреАрдо рдЗрд╕реЗ рд╢рд╛рдк рджреЗрдиреЗ рдЬрд╛ рд░рд╣реА рд╣реИ рдФрд░ рдлрд┐рд░ рд╕реЗ рд▓рд┐рдЦрдиреЗ рдХреА рдХрд▓реНрдкрдирд╛ рдХрд░ рд░рд╣реА рд╣реИ рдпрд╣ рдЕрдЧрд▓реЗ рдХреБрдЫ рд╡рд░реНрд╖реЛрдВ рдХреЗ рд▓рд┐рдП рд╣рд░ рджрд┐рдиред рдЖрдЦрд┐рд░рдХрд╛рд░ рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреА рдХрдореА рдХреЗ рдХрд╛рд░рдг рд╣рдо рдкрдВрдЦ рдХреЗ рд╕рд╛рде рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЙрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдЯрд╛рдЗрдкрд┐рдВрдЧ рдХреЛ рдЕрджреНрдпрддрд┐рдд рд░рдЦрдиреЗ рдореЗрдВ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдорджрдж рдХрд░рддреЗ рд╣реИрдВред рдХреЗрд╡рд▓ рдпрд╣ рдХрд╣рддреЗ рд╣реБрдП рдХрд┐ рдЬрдм рд╣рдо рдЧреБрдЬрд░ рд░рд╣реЗ рд╣реЛрддреЗ рд╣реИрдВ рдФрд░ рджреЗрдЦрддреЗ рд╣реИрдВ рдХрд┐ "рдмреНрд░реЗрдХрд┐рдВрдЧ рдПрдкреАрдЖрдИ рдкрд░рд┐рд╡рд░реНрддрди рдЬрд╛рд░реА рдХрд░рддреЗ рд╕рдордп рд╣рдорд╛рд░рд╛ рдПрдХрдорд╛рддреНрд░ рд╡рд┐рдХрд▓реНрдк рдЖрдЧреЗ рдмрдврд╝рдирд╛ рд╣реИ, рддреЛ рдХрд┐рд╕реА рднреА рдкреБрд░рд╛рдиреА рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкрд░рд┐рднрд╛рд╖рд╛рдУрдВ рдХреЛ рд╣рдЯрд╛рдирд╛ рд╣реИ", рд╣рдо рдХрд╣реАрдВ рдФрд░ рджреЗрдЦрддреЗ рд╣реИрдВред рдЗрд╕реЗ рдПрдХ рдорд╛рдореВрд▓реА рдХреЗ рд░реВрдк рдореЗрдВ рди рд▓реЗрдВ, рдореИрдВ рдореМрдЬреВрджрд╛ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЛ рд╕рдордЭрддрд╛ рд╣реВрдВ, рдЖрдк рдореЗрд░реА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рднрд╛рдЧреНрдпрд╢рд╛рд▓реА рдирд╣реАрдВ рд╣реИрдВ (рдореИрдВ рдмрд░реНрдмрд╛рдж рд╣реЛ рд╕рдХрддрд╛ рд╣реВрдВ) рдЬрд╣рд╛рдВ рд╣рдо рдПрдХ рдкреБрдирд░реНрд▓реЗрдЦрди рдХрд░ рд░рд╣реЗ рд╣реИрдВред

@rjsteinert рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреНрдпрд╛ рдкреЗрд╢рдХрд╢ рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдЗрд╕реЗ рдЖрдкрдХреЗ рд▓рд┐рдП рдЗрддрдирд╛ рдореВрд▓реНрдпрд╡рд╛рди рдмрдирд╛рддрд╛ рд╣реИ? (рдИрдорд╛рдирджрд╛рд░ рд╕рд╡рд╛рд▓) рдореЗрд░реЗ рдкрдВрдЦ рдХреЗ рдХрд╛рдо рдХреЗ рд╡рд░реНрддрдорд╛рди рд╕реЗрдЯ рдХреЗ рдкреВрд░рд╛ рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж, рдореЗрд░реА рдЬрд┐рдЬреНрдЮрд╛рд╕рд╛ рд▓рдЧрднрдЧ рдЗрддрдиреА рд╣реА рдмрдврд╝ рдЧрдИ рд╣реИ рдХрд┐ рдореИрдВ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкрд░ рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдЦреБрдж рдХреЛ рджреЗрдЦ рд╕рдХреВрдВред рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╕реНрд╡рдд: рдкреВрд░реНрдг/рдХреЛрдбрд╕реЗрдВрд╕ рдХреЗ рд╕рд╛рде рдорджрдж рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдкрдВрдЦ рдПрдкреАрдЖрдИ рдЗрддрдирд╛ рдЫреЛрдЯрд╛ рд╣реИ рдХрд┐ рдореИрдВ рдХрд▓реНрдкрдирд╛ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рдХрд┐ рдпрд╣ рдЙрдкрдпреЛрдЧреА рд╣реИред рдХреГрдкрдпрд╛ рдореЗрд░реА рдЕрдЬреНрдЮрд╛рдирддрд╛ рдХреЛ рдХреНрд╖рдорд╛ рдХрд░реЗрдВред ;)

autocomplete/CodeSense рдПрдХ рдЕрдЪреНрдЫрд╛ рдЙрдк-рдЙрддреНрдкрд╛рдж рд╣реИ рд▓реЗрдХрд┐рди рдореИрдВ рдЖрдорддреМрд░ рдкрд░ рд╡рд┐рдо рдореЗрдВ рд╣реВрдВ рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рдЙрдкрд╣рд╛рд░ рдирд╣реАрдВ рдорд┐рд▓рддреЗ рд╣реИрдВред рдореИрдВ рдЕрдм рддрдХ рдЬреЛ рдмрдбрд╝рд╛ рдмрджрд▓рд╛рд╡ рджреЗрдЦ рд░рд╣рд╛ рд╣реВрдВ, рд╡рд╣ рдЗрд╕ рдмрд╛рдд рдХрд╛ рдорд╛рдирдХреАрдХрд░рдг рдХрд░ рд░рд╣рд╛ рд╣реИ рдХрд┐ рдЖрдк рдХреБрдЫ рдпреЛрдЧрджрд╛рди рдХрд┐рдП рдЧрдП рдХрд╛рд░реНрдпреЛрдВ рдпрд╛ рд╡рд╕реНрддреБрдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреИрд╕реЗ рдХрд░реЗрдВред рдПрдирдкреАрдПрдо рдореЗрдВ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рджреЗрдЦрдиреЗ рдкрд░ рдореБрдЭреЗ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдШрд░реЗрд▓реВ рдФрд░ рд░рдЪрдирд╛рддреНрдордХ рд╕рдорд╛рдзрд╛рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдмрд╣реБрдд рд╕рд╛рд░реЗ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдорд┐рд▓рддреЗ рд╣реИрдВ рдЬреЛ рд╕реНрдкрд╖реНрдЯ рдФрд░ рдЙрдкрдпреЛрдЧреА рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЧрддрд┐рд╢реАрд▓ рд░реВрдк рд╕реЗ рдЯрд╛рдЗрдк рдХреА рдЧрдИ рднрд╛рд╖рд╛ рдЖрдкрдХреЛ рдирд╣реАрдВ рдмрддрд╛рддреА рд╣реИред рдЬрдм рдЖрдк рдХреЛрдб рд▓рд┐рдЦ рд░рд╣реЗ рд╣реЛрддреЗ рд╣реИрдВ рддреЛ TS рдПрдХ рдЯрди рдмреЙрдпрд▓рд░ рдкреНрд▓реЗрдЯ рдкреНрд░рдХрд╛рд░ рдХреА рдЪреАрдЬреЛрдВ рдХреА рдЬрд╛рдВрдЪ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдХрд┐рд╕реА рдФрд░ рдХреЗ рдХреЛрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рддрд░реАрдХреЗ рдХреЛ рдЬрд▓реНрджреА рд╕реЗ рд╕рдордЭрдирд╛ рдЖрд╕рд╛рди рдмрдирд╛рддрд╛ рд╣реИред рдЗрди рджрд┐рдиреЛрдВ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореИрдВ рдмреЙрдпрд▓рд░ рдкреНрд▓реЗрдЯ рдЬреЗрдПрд╕ рд▓рд┐рдЦрдиреЗ рд╕реЗ рдмреАрдорд╛рд░ рд╣реВрдВ рдЬреЛ рдХрд┐ рдореЗрд░реА рдЕрдкрдиреА рд╢реИрд▓реА рд╣реИ рдФрд░ рдЬрдм рднреА рдореИрдВ рдмрд╛рд╣рд░реА рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ рддреЛ рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХрд┐рд╕реА рдХреЗ рд░реАрдбрдореЗ рдХреЛ рдкрдврд╝рдирд╛ рдирд╣реАрдВ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред

рдореИрдВ @rjsteinert рд╕реЗ рд╕рд╣рдордд

рдпрджрд┐ рдЖрдк рдЗрд╕ рдЧрд┐рдЯрд╣рдм рдкреЛрд╕реНрдЯ рдкрд░ рд▓рд┐рдЦ рд░рд╣реЗ рд╣реИрдВ рдФрд░ рдлреЗрджрд░рдЬреЗрдПрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рдЖрдк рд╢рд╛рдпрдж рдПрдХ рдЙрддреНрд╕рд╛рд╣реА рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдбреЗрд╡рд▓рдкрд░ рд╣реИрдВред рдпрджрд┐ рдЖрдк рдлреЗрджрд░рдЬреЗрдПрд╕ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдореЗрдВ рд╕реЗ рдПрдХ рд╣реИрдВ, рддреЛ рдЖрдк рдЕрдкрдиреЗ рд▓рд┐рдП рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рдорддрд▓рдм рдирд╣реАрдВ рджреЗрдЦреЗрдВрдЧреЗред рдЖрдкрдХреЛ рдХрд┐рд╕реА рд╡рд┐рд╢реЗрд╖ рдЯреВрд▓рд┐рдВрдЧ рдпрд╛ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕рд╣рд╛рдпрддрд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред рдЖрдк рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдпреВрдирд┐рдХреЙрд░реНрди рд╣реИрдВред
рдореИрдВ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рдмреЗрд╣рдж рдЦрд┐рд▓рд╛рдл рдерд╛ (рд╡рд┐рд╢реЗрд╖рдХрд░ рдЬрдм рд╣рдореЗрдВ рдЗрд╕реЗ рдЕрд▓реНрдлрд╛ 1.1 рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд╕рд╛рде рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛), рд▓реЗрдХрд┐рди рд╡рд░реНрд╖реЛрдВ рд╕реЗ, рдореИрдВрдиреЗ рдЗрд╕рдХреА рд╕рд░рд╛рд╣рдирд╛ рдХрд░рдирд╛ рд╕реАрдЦ рд▓рд┐рдпрд╛ рд╣реИ рдФрд░ рдЗрд╕рдХреЗ рдмрд┐рдирд╛ рдирд╣реАрдВ рд░рд╣ рд╕рдХрддрд╛ред рдЖрдк рдЬрд┐рди рд╕рд╣рдХрд░реНрдорд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░реЗрдВрдЧреЗ, рд╡реЗ рдЙрддрдиреЗ рдЬрд╛рдирдХрд╛рд░ рдирд╣реАрдВ рд╣реЛрдВрдЧреЗ рдЬрд┐рддрдиреЗ рдХрд┐ рдЖрдк рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рд╣реИрдВред рд╡реЗ рд╕рднреА рдЕрд▓рдЧ-рдЕрд▓рдЧ рдкреГрд╖реНрдарднреВрдорд┐ рд╕реЗ рдЖрдПрдВрдЧреЗ, рдФрд░ рдЗрд╕ рдмрд╛рдд рдХреЛ рдХреЛрд╕реЗрдВрдЧреЗ рдХрд┐ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреИрд╕реЗ рдмрдХрд╡рд╛рд╕ рд╣реИред

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

рд╡реЗрдм рдкрд░ рдЙрдкрдпреЛрдЧ рдХреА рдЬрд╛рдиреЗ рд╡рд╛рд▓реА рд╕рдмрд╕реЗ рд▓реЛрдХрдкреНрд░рд┐рдп рднрд╛рд╖рд╛рдУрдВ рдкрд░ рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓реЗрдВ: PHP, NodeJS, Ruby, C#, Java... рдЙрдирдореЗрдВ рд╕реЗ рдХреБрдЫ рдЯрд╛рдЗрдк рдХреА рдЧрдИ рд╣реИрдВ, рдЙрдирдореЗрдВ рд╕реЗ рдХреБрдЫ рдирд╣реАрдВ рд╣реИрдВред рдореИрдВрдиреЗ рдЗрди рд╕рднреА рднрд╛рд╖рд╛рдУрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд┐рдпрд╛ рд╣реИ рдФрд░ рдореИрдВ рдЖрдкрдХреЛ рдмрддрд╛ рд╕рдХрддрд╛ рд╣реВрдВ рдХрд┐ рдЗрддрдиреЗ рд╡рд░реНрд╖реЛрдВ рдХреЗ рдмрд╛рдж, рдореИрдВ "рдбрд┐рд╕реНрдХрд╡рд░-рдПрд░рд░-рдПрдЯ-рд░рдирдЯрд╛рдЗрдо-рдУрдирд▓реА" рднрд╛рд╖рд╛ рдкрд░ рд╡рд╛рдкрд╕ рдирд╣реАрдВ рдЬрд╛рдирд╛ рдЪрд╛рд╣рддрд╛ред рдЙрди рд╕рднреА рдХреЗ рдЕрдкрдиреЗ рдЖрдХрд░реНрд╖рдг, рдлрд╛рдпрджреЗ рдФрд░ рдиреБрдХрд╕рд╛рди рд╣реИрдВред рдПрдХ рдмрдбрд╝реА рдЯреАрдо рдореЗрдВ, рдореИрдВ рд╣рдореЗрд╢рд╛ рдХреБрдЫ рдордЬрдмреВрдд рдФрд░ рдЯрд╛рдЗрдк рдХрд┐рдП рдЧрдП рдХреБрдЫ рдХреЗ рд╕рд╛рде рдЬрд╛рдиреЗ рдХрд╛ рд╕реБрдЭрд╛рд╡ рджреВрдВрдЧрд╛ред

рдореЗрд░реЗ рджреНрд╡рд╛рд░рд╛ рд▓рд┐рдЦреЗ рдЧрдП PHP SDK рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдХрд┐рд╕реА рд╡реНрдпрдХреНрддрд┐ рдХрд╛ рд╕рдмрд╕реЗ рд╣рд╛рд▓рд┐рдпрд╛ рдЙрджрд╛рд╣рд░рдгред рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдРрд╕реА рд╡рд┐рдзрд┐ рд╣реИ рдЬреЛ 100 рдЕрдВрдХреЛрдВ рдХреЗ рд╕рд╛рде "рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛" рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рддреА рд╣реИ, рддреЛ рдЖрдк рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреЗ рд░реВрдк рдореЗрдВ рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд░рддреЗ рд╣реИрдВред рд╢реБрд░реБрдЖрддреА рдбреЗрд╡рд▓рдкрд░ рдПрдХ рдмрдЧ рдЦреЛрд▓реЗрдЧрд╛ рдЬрд┐рд╕рдореЗрдВ рдкреВрдЫрд╛ рдЬрд╛рдПрдЧрд╛ рдХрд┐ рдХреНрдпреЛрдВ setValue(123456789123...) рдХреЙрд▓ рдХрд░рдирд╛ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ NodeJS рдореЗрдВ рдпрд╛ substr рд╡рд┐рдзрд┐ рдореЗрдВ рдмрд╣реБрдд рдХрдо рдХреНрд░реИрд╢ рд╣реЛрддрд╛ рд╣реИред рдЕрдм, рдордзреНрдпрд╡рд░реНрддреА рдбреЗрд╡рд▓рдкрд░ рдЖрдкрдХреЗ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реЛрдВ рдХреА рдЬрд╛рдБрдЪ рдХрд░реЗрдЧрд╛ рдФрд░ рдкрд╛рдПрдЧрд╛ рдХрд┐ рдпрд╣ рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдерд╛ред рдХрд▓реНрдкрдирд╛ рдХреАрдЬрд┐рдП рдХрд┐ рдЯрд╛рдЗрдкрд┐рдВрдЧ рдХреЗ рд╕рд╛рде, рдЖрдк рдЯрд╛рдЗрдк рдХрд░рддреЗ рдпрд╛ рд╕рдВрдХрд▓рд┐рдд рдХрд░рддреЗ рд╕рдордп рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреЛ рджрд░реНрдЬ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╛рдзреНрдп рдХрд░рддреЗ рд╣реИрдВред рддрдм рдбреЗрд╡рд▓рдкрд░ рдХреЛ рд╡рд┐рд╢рд┐рд╖реНрдЯ рджрд╕реНрддрд╛рд╡реЗрдЬ рдкрдврд╝рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИ рдФрд░ рди рд╣реА рдХреЛрдИ рдмрдЧ рдЦреЛрд▓рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред

рдореИрдВрдиреЗ рдЕрдкрдиреЗ рдирдП Angular2 + NodeJS рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рд▓рд┐рдП рдХрд┐рд╕ рдлреНрд░реЗрдорд╡рд░реНрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реИ, рдЗрд╕ рдкрд░ рдереЛрдбрд╝рд╛ рд╢реЛрдз рдХрд┐рдпрд╛, рдФрд░ FeatherJS рд╡рд╣реА рд▓рдЧ рд░рд╣рд╛ рдерд╛ рдЬрд┐рд╕рдХреА рдореБрдЭреЗ рдЖрд╡рд╢реНрдпрдХрддрд╛ рдереАред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдЕрдЧрд░ рдЖрдЬ рдПрдХ рдФрд░ рд╕рд░реНрд╡рд░ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╕рд╛рдордиреЗ рдЖрдпрд╛ рдФрд░ рдХрд╣рд╛ "рдореИрдВ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рддреМрд░ рдкрд░ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реВрдВ", рддреЛ рдореИрдВ рд╕рд╣реА рдкрд░ рд╕реНрд╡рд┐рдЪ рдХрд░реВрдВрдЧрд╛ред

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

  1. рдкрд░рд┐рднрд╛рд╖рд╛рдУрдВ рдХреЛ рдареАрдХ рд╕реЗ рдмрдирд╛рдП рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рдЬреНрдЮрд╛рди рдирд╣реАрдВ рд╣реИ
  2. рдкрд░рд┐рднрд╛рд╖рд╛рдУрдВ рдкрд░ рдХрд╛рдо рдХрд░рдиреЗ рдореЗрдВ рд╕рдордп рдирд╣реАрдВ рд▓рдЧрд╛ рд╕рдХрддреЗ рд╣реИрдВ рдЬрдм рд╣рдорд╛рд░реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЖрдзрд╛рд░ рдХреЗ рдПрдХ рдЫреЛрдЯреЗ рдкреНрд░рддрд┐рд╢рдд рдХреЛ "рдЙрдиреНрд╣реЗрдВ" рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдЙрд╕ рдкреНрд░рднрд╛рд╡ рдкрд░ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рд╕реА рдЕрдиреНрдп рд╡рд╕реНрддреБрдПрдВ рд╣реИрдВ рдЬреЛ рдЕрдзрд┐рдХ рд▓реЛрдЧреЛрдВ рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░рддреА рд╣реИрдВред

рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдЬреЛ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рдкрд░рд┐рднрд╛рд╖рд╛рдПрдБ рдмрдирд╛рдирд╛ / рдмрдирд╛рдП рд░рдЦрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рд╣рдореЗрдВ рдЙрдиреНрд╣реЗрдВ рдирдП рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реЛрдВ рдХреЗ рдкрд╛рд░рд┐рд╕реНрдерд┐рддрд┐рдХреА рддрдВрддреНрд░ рдЕрдиреБрднрд╛рдЧ рдореЗрдВ рдЬреЛрдбрд╝рдиреЗ рдореЗрдВ рдЦреБрд╢реА рд╣реЛрдЧреА, рд▓реЗрдХрд┐рди рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рд╕реНрд╡рдпрдВ рдЙрдирдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдкрдВрдЦ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп TS рдкрд░рд┐рднрд╛рд╖рд╛рдУрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИ рдФрд░ рдпрд╣ рдПрдХ рд╡реНрдпрдХреНрддрд┐рдЧрдд рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рд╣реИред рд╣рдо рдЙрдиреНрд╣реЗрдВ рдмрдирд╛рдП рд░рдЦрдиреЗ рдирд╣реАрдВ рдЬрд╛ рд░рд╣реЗ рд╣реИрдВред рд╣рдо рдЙрдиреНрд╣реЗрдВ рдореМрдЬреВрджрд╛ рд░реЗрдкреЛ рд╕реЗ рдирд┐рдХрд╛рд▓реЗрдВрдЧреЗ рдФрд░ https://github.com/phersjs/feeds-typescript рдореЗрдВ рдбрд╛рд▓рдиреЗ рдЬрд╛ рд░рд╣реЗ рд╣реИрдВ @jsgoupil , @rjsteinert , @AbraaoAlves рдпрд╛ рдХреЛрдИ рдЕрдиреНрдп рдЗрдЪреНрдЫреБрдХ рд╡реНрдпрдХреНрддрд┐ рд░реЗрдкреЛ рдХреЛ рдмрдирд╛рдП рд░рдЦрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реИ рддреЛ рд╣рдореЗрдВ рд░реЗрдкреЛ рдХреЛ рдПрдХреНрд╕реЗрд╕ рджреЗрдиреЗ рдФрд░/рдпрд╛ рдЯреНрд░рд╛рдВрд╕рдлрд░ рдХрд░рдиреЗ рдореЗрдВ рдЦреБрд╢реА рд╣реЛрдЧреАред рд╣рдореЗрдВ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕рд╕реЗ рдкрд░рд┐рднрд╛рд╖рд╛рдУрдВ рдХреЛ рдЕрджреНрдпрддрд┐рдд рд░рдЦрдирд╛ рдЖрд╕рд╛рди рд╣реЛ рдЬрд╛рдПрдЧрд╛ рдФрд░ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЯрд╛рдЗрдк рдХрд┐рдП рдЧрдП рдХреЛ рд╕рдмрдорд┐рдЯ рдХрд░рдирд╛ рдЖрд╕рд╛рди рд╣реЛ рдЬрд╛рдПрдЧрд╛ (рдмреЗрд╢рдХ рдореБрдЭреЗ рдЙрд╕ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬреНрдпрд╛рджрд╛ рдЬрд╛рдирдХрд╛рд░реА рдирд╣реАрдВ рд╣реИ)ред

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

рдпрджрд┐ рдЖрдк рдЗрд╕реЗ рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдХреНрдпрд╛ рдЖрдк рдХреГрдкрдпрд╛ рд╕реНрд░реЛрдд рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛рдУрдВ рдХреЛ npm рдкрд░ рдкреНрд░рдХрд╛рд╢рд┐рдд рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рдореЗрдВ jsnext:main рдпрд╛ module рдореЗрдВ package.json рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдЪреВрдВрдХрд┐ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЕрдм рд╡рд╛рдЗрд▓реНрдбрдХрд╛рд░реНрдб рдореЙрдбреНрдпреВрд▓ рдкрд░рд┐рднрд╛рд╖рд╛рдУрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдкрдВрдЦ-рдЙрдк-рдореЙрдбреНрдпреВрд▓ рд╕реЗ рд╕рднреА рдЯрд╛рдЗрдкрд┐рдВрдЧ рдХреЛ рд╢реБрджреНрдз рдХрд░рдирд╛ рдФрд░ рдЗрд╕реЗ feathers рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдХрд░рдирд╛ рдПрдХ рдЖрд╕рд╛рди рд╕рдорд╛рдзрд╛рди рд╣реЛрдЧрд╛:

declare module 'feathers';
declare module 'feathers-*';

рдЬреЛ any рдЯрд╛рдЗрдк рдХреЗ рд░реВрдк рдореЗрдВ рдкрдВрдЦ рдФрд░ рд╕рднреА рдкрдВрдЦ-рдЬреЛ рднреА рдореЙрдбреНрдпреВрд▓ рдШреЛрд╖рд┐рдд рдХрд░реЗрдЧрд╛, рдЬреЛ рдХрдо рд╕реЗ рдХрдо рдЯреАрдПрд╕ рдЖрдЙрдЯ-рдСрдл-рдж-рдмреЙрдХреНрд╕ рдХреЗ рд╕рд╛рде "рдЗрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ"ред рдЖрдкрдХреЛ рдЙрдиреНрдирдд рдЗрдВрдЯреЗрд▓рд┐рдЬреЗрдВрд╕ рдирд╣реАрдВ рдорд┐рд▓рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдореМрдЬреВрджрд╛ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВ рд╕рд╛рдорд╛рди рдХреЛ рддреЛрдбрд╝реЗ рдмрд┐рдирд╛ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдФрд░ рд▓реЛрдЧреЛрдВ рдХреА рдкреАрда рд╕реЗ рд╕рдорд╕реНрдпрд╛ рджреВрд░ рдХрд░рддрд╛ рд╣реИред

рдореБрдЭреЗ рднреА рдордВрдЬрд╝реВрд░ рд╣реИ:

"paths": {
            "feathers-socketio": ["typedefs/feathers-socketio/index.d.ts"]

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

рдирдорд╕реНрддреЗ,
рдореИрдВ рд╕рд┐рд░реНрдл рдЯрд╛рдЗрдкрдкреНрд░рддрд┐ рд╕рдорд░реНрдерди рдХреЗ рд╕рдВрдмрдВрдз рдореЗрдВ рдПрдХ рд╕рдВрджреЗрд╣ рдХреЛ рд╕реНрдкрд╖реНрдЯ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред
рд╕реЗрд╡рд╛ рдХреА

рд▓реЗрдХрд┐рди рдкреНрд░рд▓реЗрдЦрди рдХреЗ рдЕрдиреБрд╕рд╛рд░, рд╕реЗрд╡рд╛ рдХреЗ рддрд░реАрдХреЗ рд╡реИрдХрд▓реНрдкрд┐рдХ рд╣реИрдВред
рджреЗрдЦреЛ
image

рддреЛ, рд╕реЗрд╡рд╛ рдкрд░рд┐рднрд╛рд╖рд╛ рдиреАрдЪреЗ рдХреА рддрд░рд╣ рдХреБрдЫ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП, рд╣реИ рдирд╛?

  interface Service<T> extends events.EventEmitter {
    find?(params?: Params, callback?: any): Promise<T[] | Pagination<T>>;
    get?(id: number | string, params?: Params, callback?: any): Promise<T>;
    create?(data: T | T[], params?: Params, callback?: any): Promise<T | T[]>;
    update?(id: NullableId, data: T, params?: Params, callback?: any): Promise<T>;
    patch?(id: NullableId, data: any, params?: Params, callback?: any): Promise<T>;
    remove?(id: NullableId, params?: Params, callback?: any): Promise<T>;
    setup?(app?: Application, path?: string): void;
  }

@harish2704 рд╣рд╛рдБ рдпрд╣ рд╕рд╣реА рд╣реИ

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

рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдореИрдВ рдХрдо рд╕реЗ рдХрдо рдПрдХ рдЙрддреНрдкрд╛рджрди рдкрд░рд┐рдпреЛрдЬрдирд╛ рдкрд░ рдХреБрдЫ рдпреБрджреНрдз-рдкрд░реАрдХреНрд╖рдг рдкрд░рд┐рднрд╛рд╖рд╛рдПрдБ рдкреНрд░рд╕реНрддреБрдд рдХрд░реВрдБрдЧрд╛ред

рдзрдиреНрдпрд╡рд╛рдж рдХреВ!

рдордВрдЧрд▓рд╡рд╛рд░, 9 рдордИ, 2017 рдХреЛ рд╕реБрдмрд╣ 7:42 рдмрдЬреЗ, рд░рд┐рдЪрд░реНрдб рдорд╛рдЗрдХрд▓ рдХреВ <
рд╕реВрдЪрдирд╛рдПрдВ@github.com> рдиреЗ рд▓рд┐рдЦрд╛:

@ harish2704 https://github.com/harish2704 рд╣рд╛рдБ рдпрд╣ рд╕рд╣реА рд╣реИ

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

рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдореИрдВ at . рдкрд░ рдХреБрдЫ рдпреБрджреНрдз-рдкрд░реАрдХреНрд╖рд┐рдд рдкрд░рд┐рднрд╛рд╖рд╛рдПрдБ рд╕рдмрдорд┐рдЯ рдХрд░реВрдБрдЧрд╛
рдХрдо рд╕реЗ рдХрдо рдПрдХ рдЙрддреНрдкрд╛рджрди рдкрд░рд┐рдпреЛрдЬрдирд╛ред

-
рдЖрдк рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдиреЗ рдЗрд╕ рдереНрд░реЗрдб рдХреА рд╕рджрд╕реНрдпрддрд╛ рд▓реА рд╣реИред
рдЗрд╕ рдИрдореЗрд▓ рдХрд╛ рд╕реАрдзреЗ рдЙрддреНрддрд░ рджреЗрдВ, рдЗрд╕реЗ GitHub рдкрд░ рджреЗрдЦреЗрдВ
https://github.com/phersjs/phers/issues/381#issuecomment-300138396 ,
рдпрд╛ рдереНрд░реЗрдб рдХреЛ рдореНрдпреВрдЯ рдХрд░реЗрдВ
https://github.com/notifications/unsubscribe-auth/ABezn0WGqH30NNp8-X-ckpVuk_BTQbbnks5r4FEQgaJpZM4Jears
.

@myknbani
рдЬрд╛рдВрдЪ рдХрд░рдиреЗ рдореЗрдВ рдереЛрдбрд╝рд╛ рдЬрд▓реНрджреА рд╣реЛ рд╕рдХрддрд╛ рд╣реИ - рд▓реЗрдХрд┐рди рдЖрдк рдЯрд╛рдЗрдкрд┐рдлрд╝ рдХреЗ рд╕рд╛рде рдХреИрд╕реЗ рдЖрдЧреЗ рдмрдврд╝реЗ? рдХреНрдпрд╛ рдЖрдкрдХреЛ рдмрд┐рд▓реНрдХреБрд▓ рд╣рд╛рде рдЪрд╛рд╣рд┐рдП? :) рдореИрдВ рдПрдХ рдирдИ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдкрдВрдЦреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕рдорд░реНрдерди рдХреА рдХрдореА рдПрдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд┐рдВрджреБ рд╣реИред

рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕рдорд░реНрдерди рдХреА рдХрдореА

рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЖрдкрдХрд╛ рдХреНрдпрд╛ рдорддрд▓рдм рд╣реИред рдпрд╣ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдпрд╣ рдкрд░рд┐рдкреВрд░реНрдг рд╕реЗ рдмрд╣реБрдд рджреВрд░ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред

@jonlambert рдореИрдВ @ j2L4e рд╕реЗ рд╕рд╣рдордд рд╣реВрдВред рдореМрдЬреВрджрд╛ рд╡рд╛рд▓реЗ рд╕рд╣реА рдирд╣реАрдВ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдореИрдВ рд╕рд┐рд░реНрдл рдЙрд╕ рдЯреНрд░рд┐рдХ рдХреЛ рдХрд░рддрд╛ рд╣реВрдВ рдЬрд┐рд╕рдХрд╛ рдореИрдВрдиреЗ

рдЖрдИрдПрдордПрдЪрдУ, feathers-rest рдЬреИрд╕реЗ рдкреИрдХреЗрдЬ рдЬрд┐рдиреНрд╣реЗрдВ рдХреЗрд╡рд▓ рджреЛ рдкрдВрдХреНрддрд┐рдпреЛрдВ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЯрд╛рдЗрдкрд┐рдВрдЧ рдХреЗ рд▓рд╛рдпрдХ рдирд╣реАрдВ рд╣реИрдВ :-)

рдореБрдЭреЗ рдпрд╣ рднреА рдпрд╛рдж рдирд╣реАрдВ рд╣реИ рдХрд┐ рдореИрдВрдиреЗ рдХреНрдпрд╛ рдмрджрд▓рд╛, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣реБрдХ рдФрд░ рд╕реЗрд╡рд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдореЗрдВ рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реИред

@ j2L4e рдореЗрд░рд╛ рдорддрд▓рдм рдерд╛ рдХрд┐ feathers рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдЖрдк рд╕рд╣реА рдХрд╣ рд░рд╣реЗ рд╣реИрдВ, рдКрдкрд░ рдмрддрд╛рдП рдЧрдП рд╕рдорд╛рдзрд╛рди рдХреЗ рд╕рд╛рде рдЗрдирдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ 'рд╕рдорд░реНрдерд┐рдд' рдирд╣реАрдВ рд╣реИ рдЬреИрд╕рд╛ рдХрд┐ рд╣рдо рдЗрд╕ рдореБрджреНрджреЗ рд╕реЗ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ!

рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдореЗрдВ рд╣рдорд╛рд░реЗ рд╡рд░реНрдХрдлрд╝реНрд▓реЛ рдХрд╛ рдЕрднрд┐рдиреНрди рдЕрдВрдЧ рд╣реИ рдХрд┐ рд╣рдорд╛рд░реЗ рдРрдкреНрд╕ рд▓рд╛рдЗрди рдХреЗ рдиреАрдЪреЗ рд░рдЦрд░рдЦрд╛рд╡ рдпреЛрдЧреНрдп рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ рд╕реЛрдЪрд╛ рдХрд┐ рдпрд╣ рджреЗрдЦрдиреЗ рд▓рд╛рдпрдХ рдерд╛ рдХрд┐ @myknbani рдХреА рдкрд░рд┐рднрд╛рд╖рд╛рдПрдВ рдЙрдкрд▓рдмреНрдз рдереАрдВ рдпрд╛ рдирд╣реАрдВред рд╣рд╛рд▓рд╛рдВрдХрд┐ рдХреЛрдИ рдЪрд┐рдВрддрд╛ рдирд╣реАрдВ! рдореИрдВ

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

рдЪреВрдВрдХрд┐ рдкрдВрдЦ рдХреЛрд░ рдЯреАрдо рдореЗрдВ рдХреЛрдИ рднреА рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╣рдо:

  1. рдкрд░рд┐рднрд╛рд╖рд╛рдУрдВ рдХреЛ рдареАрдХ рд╕реЗ рдмрдирд╛рдП рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рдЬреНрдЮрд╛рди рдирд╣реАрдВ рд╣реИ
  2. рдкрд░рд┐рднрд╛рд╖рд╛рдУрдВ рдкрд░ рдХрд╛рдо рдХрд░рдиреЗ рдореЗрдВ рд╕рдордп рдирд╣реАрдВ рд▓рдЧрд╛ рд╕рдХрддреЗ рд╣реИрдВ рдЬрдм рд╣рдорд╛рд░реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЖрдзрд╛рд░ рдХреЗ рдПрдХ рдЫреЛрдЯреЗ рдкреНрд░рддрд┐рд╢рдд рдХреЛ "рдЙрдиреНрд╣реЗрдВ" рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдЙрд╕ рдкреНрд░рднрд╛рд╡ рдкрд░ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рд╕реА рдЕрдиреНрдп рд╡рд╕реНрддреБрдПрдВ рд╣реИрдВ рдЬреЛ рдЕрдзрд┐рдХ рд▓реЛрдЧреЛрдВ рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░рддреА рд╣реИрдВред

рдврд╛рдВрдЪреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдирд╡рд╛рдЧрдВрддреБрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдореИрдВрдиреЗ рдЗрд╕ рдореБрджреНрджреЗ рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪрд╛ рд╣реЛрдЧрд╛, рд╕рд╛рде рд╣реА рдЙрдкрд░реЛрдХреНрдд рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдВ рдЯреАрдПрд╕ рд╕рдорд░реНрдерди рдХреА рдХрдореА рдХреЛ рдорд╛рдирдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рдереАрдВред рдХреНрд╖рдорд╛ рдХрд░реЗрдВ рдпрджрд┐ рдпрд╣ рдЧрд▓рдд рдирд┐рд╖реНрдХрд░реНрд╖ рд╣реИ, рддреЛ рдореИрдВ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЗрд╕реЗ рдЖрдЬрдорд╛рдКрдВрдЧрд╛ред

рд╕рд╛рде рд╣реА, рдпрд╣ "рдХрд╛рдо" рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдХрд┐рд╕реА рднреА рдкреНрд░рдХрд╛рд░ рдХреА рдЧрд╛рд░рдВрдЯреА рдХреЗ рдмрд┐рдирд╛ рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рдкреНрд░рдХрд╛рд░ рдХреА рдкрд░рд┐рднрд╛рд╖рд╛рдПрдВ рдПрдкреАрдЖрдИ рдХреЗ рд╕рд╛рде рдЕрджреНрдпрддрд┐рдд рд░рд╣реЗрдВ, рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕рдореЗрдВ рднрд╡рд┐рд╖реНрдп рдореЗрдВ рд╕рдорд╕реНрдпрд╛рдПрдВ рдкреИрджрд╛ рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рд╣реИред

рддреБрдо рд╕рд╣реА рдХрд╣ рд░рд╣реА рд╣реЛред

рд╣рд╛рд▓рд╛рдБрдХрд┐, рд╣рд╛рд▓ рд╣реА рдореЗрдВ рдХреБрдЫ рд╕реБрдзрд╛рд░ рд╣реБрдП рд╣реИрдВ рдФрд░ рдЯрдВрдХрдг рдкреВрд░рд╛ рдХрд░рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рд╣реИ рдФрд░ рдирд┐рд░реНрдорд╛рдг рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИред

рдпрд╣ рдмрд╣реБрдд рдЕрдЪреНрдЫреА рдЦрдмрд░ рд╣реИ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЕрдм рддрдХ рдврд╛рдВрдЪреЗ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХрд╛ рдЖрдирдВрдж рд▓реЗ рд░рд╣рд╛ рд╣реВрдВ рдФрд░ рдореИрдВ рдЗрд╕реЗ рдЯреАрдПрд╕ рдХреЗ рд╕рд╛рде рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП рдЙрддреНрд╕рд╛рд╣рд┐рдд рд╣реВрдВ

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

@ j2L4e рдЖрдк рд╕рд╣реА рдХрд╣ рд░рд╣реЗ рд╣реИрдВред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЯрд╛рдЗрдкрдкреАрдл рдЕрдм рдХрд╛рдлреА рдмреЗрд╣рддрд░ рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╣реИрдВред рдореИрдВ рдирд╖реНрдЯ рдХрд░ рджрд┐рдпрд╛ рдореЗрд░реА "рдУрд╡рд░рд░рд╛рдЗрдб" рдФрд░ рдХреЗрд╡рд▓ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдЕрдм рддрдХ рд╢реЗрд╖ рдХреЗ рд╕рднреА рдХрд░ рд░рд╣реЗ рд╣реИрдВ ! рдХрдердиреЛрдВ (рдХреА coz strictNullChecks ) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп app.service(...) ред

рдореИрдВ рд╕реЗрд╡рд╛ рдкрд░рд┐рднрд╛рд╖рд╛ (рдЬрд╣рд╛рдВ рд╕реЗрд╡рд╛ рд╡рд┐рдзрд┐рдпрд╛рдВ рд╕рднреА рд╡реИрдХрд▓реНрдкрд┐рдХ рд╣реИрдВ) рдФрд░ рд╕реЗрд╡рд╛ рдЙрджрд╛рд╣рд░рдг (рдЬрд╣рд╛рдВ рд╕рднреА рд╕реЗрд╡рд╛ рд╡рд┐рдзрд┐рдпрд╛рдВ рдЕрдкрд░рд┐рднрд╛рд╖рд┐рдд рдирд╣реАрдВ рд╣реИрдВ) рдХреЗ рд▓рд┐рдП рдЯрд╛рдЗрдкрд┐рдВрдЧ рдХреЛ рдЕрд▓рдЧ рдХрд░рдиреЗ рдХрд╛ рд╕реБрдЭрд╛рд╡ рджреВрдВрдЧрд╛ред рд╡рд░реНрддрдорд╛рди рдореЗрдВ, рдореБрдЭреЗ рд╣рд░ рдЬрдЧрд╣ рджрд░реНрдж рд╕реЗ ! s рдЬреЛрдбрд╝рдирд╛ рдкрдбрд╝рд╛ рдЬреИрд╕реЗ await app.service('api/foos').create!([{

рдореЗрд░реЗ рдкрд╛рд╕ рдпрд╣ рдореЗрд░реЗ рдХрд╛рдордХрд╛рдЬ рдореЗрдВ рдерд╛:

interface ServiceDefinition<T> {
    find?(params?: Params, callback?: any): Promise<T[] | Pagination<T>>;
    get?(id: number | string, params?: Params, callback?: any): Promise<T>;
    create?(data: T | T[], params?: Params, callback?: any): Promise<T | T[]>;
    update?(id: NullableId, data: T, params?: Params, callback?: any): Promise<T>;
    patch?(id: NullableId, data: any, params?: Params, callback?: any): Promise<T>;
    remove?(id: NullableId, params?: Params, callback?: any): Promise<T>;
    setup?(app?: Application, path?: string): void;
  }

  interface ServiceInstance<T> extends events.EventEmitter {
    find(params?: Params, callback?: any): Promise<T[] | Pagination<T>>;
    get(id: number | string, params?: Params, callback?: any): Promise<T>;
    create(data: T | T[], params?: Params, callback?: any): Promise<T | T[]>;
    update(id: NullableId, data: T, params?: Params, callback?: any): Promise<T>;
    patch(id: NullableId, data: any, params?: Params, callback?: any): Promise<T>;
    remove(id: NullableId, params?: Params, callback?: any): Promise<T>;
  }

рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреИрд╕реЗ:

  interface GetMethod<T>{
    /**
     * Retrieves a list of all resources from the service.
     * Provider parameters will be passed as params.query
     */
    find(params?: Params, callback?: any): Promise<T[] | Pagination<T>>;
  }

  interface FindMethod<T>{
    /**
     * Retrieves a single resource with the given id from the service.
     */
    get(id: number | string, params?: Params, callback?: any): Promise<T>;
  }

  interface CreateMethod<T>{
    /**
     * Creates a new resource with data.
     */
    create(data: T[], params?: Params, callback?: any): Promise<T[]>;
    create(data: T, params?: Params, callback?: any): Promise<T>;
  }

  interface UpdateMethod<T>{
    /**
     * Replaces the resource identified by id with data.
     * Update multiples resources with id equal `null`
     */
    update(id: NullableId, data: T, params?: Params, callback?: any): Promise<T>;
  }

  interface PatchMethod<T>{
    /**
     * Merges the existing data of the resource identified by id with the new data.
     * Implement patch additionally to update if you want to separate between partial and full updates and support the PATCH HTTP method.
     * Patch multiples resources with id equal `null`
     */
    patch(id: NullableId, data: any, params?: Params, callback?: any): Promise<T>;
  }

  interface RemoveMethod<T>{
    /**
     * Removes the resource with id.
     * Delete multiple resources with id equal `null`
     */
    remove(id: NullableId, params?: Params, callback?: any): Promise<T>;
  }

  interface OptionalMethods <T> {
    find?(params?: Params, callback?: any): Promise<T[] | Pagination<T>>;
    get?(id: number | string, params?: Params, callback?: any): Promise<T>;
    create?(data: T[], params?: Params, callback?: any): Promise<T[]>;
    create?(data: T, params?: Params, callback?: any): Promise<T>;
    update?(id: NullableId, data: T, params?: Params, callback?: any): Promise<T>;
    patch?(id: NullableId, data: any, params?: Params, callback?: any): Promise<T>;
    remove?(id: NullableId, params?: Params, callback?: any): Promise<T>;
  }

  type GetService<T> = GetMethod<T> & ServiceAddons;
  type FindService<T> = FindMethod<T> & ServiceAddons;
  type CreateService<T> = CreateMethod<T> & ServiceAddons;
  type UpdateService<T> = UpdateMethod<T> & ServiceAddons;
  type PatchService<T> = PatchMethod<T> & ServiceAddons;
  type RemoveService<T> = RemoveMethod<T> & ServiceAddons;

  interface ServiceCore<T> extends OptionalMethods<T> {
    setup?(app?: Application<any>, path?: string): void;
  }

  interface ServiceAddons extends events.EventEmitter {
    filter(any?: any): this;
  }

  type Service<T> = OptionalMethods<T> & ServiceAddons;

рдпрд╣ рдЖрдкрдХреЛ рдПрдХ рдирдП рдкреНрд░рдХрд╛рд░ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░рдХреЗ рдХрд┐рд╕реА рднреА рдЧреИрд░-рдЯреАрдПрд╕ рд╕реЗрд╡рд╛ рдХреЛ рдЯрд╛рдЗрдк рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдкрдВрдЦ-рдореЗрд▓рд░ рдХреЗ рд▓рд┐рдП:

type MailerService = CreateService<Mail>;

рдпрд╛ рдПрдХ (рдХрд╛рдлреА рдмреЗрдХрд╛рд░) рд╕реЗрд╡рд╛ рдЬреЛ рдХреЗрд╡рд▓ рдмрдирд╛ рдФрд░ рд╣рдЯрд╛ рд╕рдХрддреА рд╣реИ:

type TrashyService<T> = CreateService<T> & RemoveService<T>;

рд╕реЗрд╡рд╛рдУрдВ рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдЪрдпрдирдХрд░реНрддрд╛ рдХрд╛рд░реНрдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд╕рд╛рде рдпрд╣ рд╕рдм рдХреБрдЫ рд╣реИ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП app.service(s => s.mailout)) рдЙрд╕ рд╕реЗрд╡рд╛ рдХреЛ рдЙрд╕рдХреЗ рдЙрдкрдпреБрдХреНрдд рдкреНрд░рдХрд╛рд░ рдХреЗ рд╕рд╛рде рд╡рд╛рдкрд╕ рдХрд░ рджреЗрдЧрд╛ред рдЬреИрд╕рд╛ рдХрд┐ рдпрд╣рд╛рдВ рджреЗрдЦрд╛ рдЧрдпрд╛ рд╣реИ:

image

рдЕрднреА рд╡рд╛рдкрд╕ рдЪреЗрдХ рдЗрди рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рд╣рдо рдХреИрд╕реЗ рдЖрдЧреЗ рдмрдврд╝ рд░рд╣реЗ рд╣реИрдВ? @j2L4e рдкреЛрд╕реНрдЯ ^ рд╡рд╛рдХрдИ рд╕рд╛рдл-рд╕реБрдерд░реА рд▓рдЧ рд░рд╣реА рд╣реИ! рдмрд╕ рд╕реЛрдЪ рд░рд╣рд╛ рдерд╛ рдХрд┐ рдореБрдЭреЗ рдХреЛрдИ рдорджрдж рдорд┐рд▓ рд╕рдХрддреА рд╣реИ рдпрд╛ рдирд╣реАрдВ, рдпрд╣ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдФрд░ рдХреНрдпрд╛ рдХрд░рдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИред

рдареАрдХ рд╣реИ, рдореИрдВ рдЕрдм рддрдХ рдЬреЛ рддреНрд░реБрдЯрд┐рдпрд╛рдВ рджреЗрдЦ рд░рд╣рд╛ рд╣реВрдВ:

import * as handler from 'feathers-errors/handler';
import * as notFound from 'feathers-errors/not-found'; //[1]

app.use(notFound()); //[2]
app.use(handler()); //[3]

[1]

[ts] рдореЙрдбреНрдпреВрд▓ '"c:/рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛/рдЬреЙрд░реНрдЬ/рд╕реНрд░реЛрдд/Repos/ts4/рдиреЛрдб_рдореЙрдбреНрдпреВрд▓/рдкрдВрдЦ-рддреНрд░реБрдЯрд┐рдпрд╛рдВ/рдирд╣реАрдВ-рдорд┐рд▓рд╛"' рдПрдХ рдЧреИрд░-рдореЙрдбреНрдпреВрд▓ рдЗрдХрд╛рдИ рдХреЛ рд╣рд▓ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЗрд╕ рдирд┐рд░реНрдорд╛рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЖрдпрд╛рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

[2]

'рдлрд╝рдВрдХреНрд╢рди' рдкреНрд░рдХрд╛рд░ рдХрд╛ рддрд░реНрдХ 'PathParams' рдкреНрд░рдХрд╛рд░ рдХреЗ рдкреИрд░рд╛рдореАрдЯрд░ рдХреЗ рд▓рд┐рдП рдЕрд╕рд╛рдЗрди рдХрд░рдиреЗ рдпреЛрдЧреНрдп рдирд╣реАрдВ рд╣реИред
рдЯрд╛рдЗрдк рдХрд░реЗрдВ 'рдлрдВрдХреНрд╢рди' '(рд╕реНрдЯреНрд░рд┐рдВрдЧ | RegExp) []' рдЯрд╛рдЗрдк рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрд╕рд╛рдЗрди рдХрд░рдиреЗ рдпреЛрдЧреНрдп рдирд╣реАрдВ рд╣реИред
рд╕рдВрдкрддреНрддрд┐ 'рдкреБрд╢' рдкреНрд░рдХрд╛рд░ 'рдлрд╝рдВрдХреНрд╢рди' рдореЗрдВ рдЧреБрдо рд╣реИред

[3]

'рдлрд╝рдВрдХреНрд╢рди' рдкреНрд░рдХрд╛рд░ рдХрд╛ рддрд░реНрдХ 'PathParams' рдкреНрд░рдХрд╛рд░ рдХреЗ рдкреИрд░рд╛рдореАрдЯрд░ рдХреЗ рд▓рд┐рдП рдЕрд╕рд╛рдЗрди рдХрд░рдиреЗ рдпреЛрдЧреНрдп рдирд╣реАрдВ рд╣реИред
рдЯрд╛рдЗрдк рдХрд░реЗрдВ 'рдлрдВрдХреНрд╢рди' '(рд╕реНрдЯреНрд░рд┐рдВрдЧ | RegExp) []' рдЯрд╛рдЗрдк рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрд╕рд╛рдЗрди рдХрд░рдиреЗ рдпреЛрдЧреНрдп рдирд╣реАрдВ рд╣реИред
(рдЙрдкрдирд╛рдо) рдирд╣реАрдВ рдорд┐рд▓рд╛ (): рдлрд╝рдВрдХреНрд╢рди

рдХреНрдпрд╛ рдореМрдЬреВрджрд╛ рдХрд╛рдордХрд╛рдЬ рд╣реИрдВ?

рдЕрдЧрд▓реЗ рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд▓рд┐рдП, @j2L4e рдЯрд╛рдЗрдкрд┐рдВрдЧ рдХреЛ рдмреЗрд╣рддрд░ рдмрдирд╛рдиреЗ рдкрд░ рдХреБрдЫ рдмреЗрд╣рддрд░реАрди рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИред рдЗрд╕реЗ рдЖрдЬрд╝рдорд╛рдиреЗ рдФрд░ рдмреАрдЯрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдХреЗ рдЪрд░рдг рдпрд╣рд╛рдВ рджрд┐рдП рдЧрдП рд╣реИрдВ:

npm i -g lerna
git clone -b buzzard-j2L4e  https://github.com/feathersjs-ecosystem/feathers-typescript.git
cd feathers-typescript
lerna bootstrap

рд▓рд░реНрди рдЖрдкрдХреЗ рд▓рд┐рдП рд╕рднреА рдкреИрдХреЗрдЬ рдФрд░ рд╡рд┐рд╡рд░рдг рд▓рд┐рдВрдХ рдХрд░реЗрдЧрд╛ред рдЕрдм ./packages/tests рд╕рдмрдлрд╝реЛрд▓реНрдбрд░ рдкрд░ рдЬрд╛рдПрдБ (рдЬрд╣рд╛рдБ рдЕрднреА рддрдХ рдХреЛрдИ рдкрд░реАрдХреНрд╖рдг рдирд╣реАрдВ рдорд┐рд▓рд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ рдЗрд╕реЗ рдПрдХ рдкреНрд░рдХрд╛рд░ рдХрд╛ рдЦреЗрд▓ рдХрд╛ рдореИрджрд╛рди рдмрдирд╛ рджрд┐рдпрд╛) рдФрд░ TS рдЕрдЪреНрдЫрд╛рдИ рдЖрдЬрд╝рдорд╛рдПрдБ! index.ts рджреЗрдЦреЗрдВред

рд╕рдВрдХрд▓рд┐рдд рдХрд░рдиреЗ рдФрд░ рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП, ./packages/tests рд╕реЗ npm start рдЪрд▓рд╛рдПрдБ

рдЕрднреА-рдЕрднреА рдлреЗрджрд░ 2 рд╕реЗ 3 рдореЗрдВ рдорд╛рдЗрдЧреНрд░реЗрд╢рди рд╢реБрд░реВ рдХрд┐рдпрд╛ рд╣реИ, index.d.ts рдлрд╛рдЗрд▓реЗрдВ рдЕрдм рд╣реЗрдб @рдлреЗрджрд░рдЬрдЬ рдкреИрдХреЗрдЬ рд╕реЗ рдЧрд╛рдпрдм рд╣реИрдВред рдЙрдиреНрд╣реЗрдВ рдмрд╣рд╛рд▓ рдХрд░рдиреЗ рдХреА рдХреЛрдИ рдпреЛрдЬрдирд╛ рд╣реИ?

рдЬреИрд╕рд╛ рдХрд┐ рдКрдкрд░ рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЙрдиреНрд╣реЗрдВ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЯрд╛рдЗрдк рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП https://github.com/phersjs-ecosystem/phers-typescript/tree/buzzard-j2L4e рдкрд░ рд▓реЗ рдЬрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред @j2L4e рдЕрднреА рдмрд╣реБрдд рд╡реНрдпрд╕реНрдд рд╣реИ рдЗрд╕рд▓рд┐рдП рдЗрд╕реЗ рдЪреБрдирдирд╛ рдХрд┐рд╕реА рдФрд░ рдкрд░ рдирд┐рд░реНрднрд░ рд╣реИред рдЬреЛ рдореИрдВрдиреЗ рд╕рдордЭрд╛ рд╡рд╣ рдЬреНрдпрд╛рджрд╛рддрд░ рд▓рд┐рдВрдЯрд┐рдВрдЧ рдХреЛ рдкрд╛рд╕ рдХрд░ рд░рд╣рд╛ рд╣реИ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЯрд╛рдЗрдк рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдореИрдВ рдЦреБрд╢реА-рдЦреБрд╢реА рдорджрдж рдХрд░реВрдВрдЧрд╛ рдЬреЛ рдХреЛрдИ рднреА рдЗрд╕реЗ рд▓реЗрдиреЗ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕реЗ рдЕрдкрдиреЗ рдКрдкрд░ рд▓реЗрдиреЗ рдХреА рдХреЛрдИ рдпреЛрдЬрдирд╛ рдирд╣реАрдВ рд╣реИред

рд╣рд╛рдВ, рдпрд╣ рдореЗрд░реА рдЕрдкреЗрдХреНрд╖рд╛ рд╕реЗ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдХрд╛рдо рдерд╛ рдФрд░ рд╕рдореБрджрд╛рдп рд╕реЗ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рд▓рдЧрднрдЧ рд╢реВрдиреНрдп рдереАред рд╕рдордп рдорд┐рд▓рддреЗ рд╣реА рдореИрдВ рдЗрд╕реЗ рдкреВрд░рд╛ рдХрд░ рд▓реВрдВрдЧрд╛ред рд╣рд╛рд▓рд╛рдВрдХрд┐ рдмрд╣реБрдд рдЬрд▓реНрджреА рдирд╣реАрдВред

рдЕрдЧрд░ рдХреЛрдИ рдпрд╣рд╛рдБ рдЭрдВрдХрд╛рд░ рдХрд░реЗрдЧрд╛, рддреЛ рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдмрд╣реБрдд рдмрдврд╝рд┐рдпрд╛ рд╣реЛрдЧрд╛ред рдпрд╣ рдЕрдм рдбреАрдЯреА рд▓рд╛рдЗрдирд┐рдВрдЧ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣реИ, рдХрд┐ рд╕рдм рдХреБрдЫ рдареАрдХ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИ-рдИрд╢реЛ

рд╕реНрд▓реИрдХ рд╕реЗ рдПрдХ рддреНрд╡рд░рд┐рдд рдХреЙрдкреА рдФрд░ рдкреЗрд╕реНрдЯ:

рджреЛрд╕реНрддреЛрдВ, рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕ рд╕рдордп рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╡реНрдпрд╕реНрдд рд╣реВрдВ, рдЗрд╕рд▓рд┐рдП рдЯрд╛рдЗрдкрд┐рдВрдЧ рдХреБрдЫ рднреА рд╣реЛ рд▓реЗрдХрд┐рди рд╕рд░реНрд╡реЛрдЪреНрдЪ рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рд╣реИред рд╡реЗ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ рд▓реЗрдХрд┐рди рд▓рд╛рдЗрдирд┐рдВрдЧ рдирд┐рдпрдореЛрдВ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЯрд╛рдЗрдк рдХрд┐рдпрд╛ рдЧрдпрд╛ рдХрд╛рдлреА рд╕рдЦреНрдд рд╣реИред рдпрджрд┐ рдЖрдк рдЯрд╛рдЗрдкрд┐рдВрдЧ рдХреЛ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЯрд╛рдЗрдк рдХреА рдЧрдИ рд▓рд╛рдЗрдирд┐рдВрдЧ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рдкрд╛рд╕ рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рдмрд╣реБрдд рдмрдврд╝рд┐рдпрд╛ рд╣реЛрдЧрд╛

рдпрд╣рд╛рдВ рдореЗрд░рд╛ рдбреАрдЯреА рдХрд╛рдВрдЯрд╛ рджреЗрдЦреЗрдВ https://github.com/j2L4e/definitelytyped , рдЖрдкрдХреЛ types/feathersjs__packagename рдореЗрдВ рдкрдВрдЦ рдкреИрдХреЗрдЬ рдорд┐рд▓реЗрдВрдЧреЗ

рдХреНрд▓реЛрди, рдПрдирдкреАрдПрдо рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░реЗрдВ рдФрд░ рдХрд┐рд╕реА рдПрдХ рдкреИрдХреЗрдЬ рдкрд░ рд▓рд┐рдВрдЯрд░ рдЪрд▓рд╛рдПрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП npm run lint @feathersjs/feathers (рд╕рдВрдкрд╛рджрд┐рдд)

@feathersjs/feathers рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдареАрдХ рд╕реЗ рд▓рд╛рдЗрдирд┐рдВрдЧ рдХрд░ рд░рд╣рд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЖрдк рдЗрд╕реЗ рд╕рдВрджрд░реНрдн рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред (рд╕рдВрдкрд╛рджрд┐рдд)

рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкрд░рд┐рднрд╛рд╖рд╛рдПрдБ https://github.com/DefinitelyTyped/DefinitelyTyped/pull/22805 рдкрд░ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЯрд╛рдЗрдк рдХреА рдЧрдИ рд╕рдореАрдХреНрд╖рд╛ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░ рд░рд╣реА рд╣реИрдВ

рдкрд░рд┐рднрд╛рд╖рд╛рдПрдБ рдЕрдм NPM рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕реБрд▓рдн рд╣реИрдВ!

рд╣рд╛рдВ, рдкреИрдХреЗрдЬ @feathersjs/package рд▓рд┐рдП @types/feathersjs__package рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░реЗрдВ рдФрд░ рдХреГрдкрдпрд╛ рдХреБрдЫ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рджреЗрдВ!

@erikma рдЖрдкрдХреЗ рд╕рдорд░реНрдерди рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж!

@j2L4e рдЖрдкрдХреЗ рдХрд╛рдо рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж! рд▓реЗрдХрд┐рди рдХреНрдпрд╛ рдЖрдк рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рд╣реИрдВ рдХрд┐ рдЖрдкрдиреЗ рд╕рднреА @featherjs/express рдлрд╝рдВрдХреНрд╢рди рдирд┐рд░реНрдпрд╛рдд рдХрд░ рд▓рд┐рдП рд╣реИрдВ? рдореБрдЭреЗ рдЖрдкрдХреА рдЯрд╛рдЗрдкрдкреНрд░рддрд┐ рдкрд░рд┐рднрд╛рд╖рд╛ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЖрд░рд╛рдо, json, notFound рдФрд░ urlencoded рдХрд╛ рдХреЛрдИ рдЙрд▓реНрд▓реЗрдЦ рдирд╣реАрдВ рдорд┐рд▓ рд░рд╣рд╛ рд╣реИред

image

рддреБрдо рд╕рд╣реА рд╣реЛ, рд╡реЗ рдЧрд╛рдпрдм рд╣реИрдВред

рдЕрднреА рдХреЗ рд▓рд┐рдП рдПрдХ рдЯрд╛рдЗрдкрд┐рдВрдЧ.d.ts рдлрд╝рд╛рдЗрд▓ рдЬреЛрдбрд╝реЗрдВ:

import { ErrorRequestHandler, RequestHandler } from 'express';

declare module '@feathersjs/express' {
    export function errorHandler(options?: any): ErrorRequestHandler;
    export function notFound(): RequestHandler;
    export const rest: {
        (): () => void;
        formatter: RequestHandler;
    };
}

рдкрддрд╛ рдирд╣реАрдВ рдХрд╣рд╛рдБ urlencoded рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдкрд┐рдЫрд▓реЗ рдЫреЛрдЯреЗ рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ urlencoded рдФрд░ json рдХреЛ express рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ рд╣реИред рдХреНрдпрд╛ express рдЯрд╛рдЗрдкрд┐рдВрдЧ рдХреЛ рдЕрднреА рддрдХ рдЕрдкрдбреЗрдЯ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ?

рдХреНрдпрд╛ рд╡рд╣ рдПрдХреНрд╕рдкреНрд░реЗрд╕ рдпрд╛ рдкрдВрдЦрдЬ/рдПрдХреНрд╕рдкреНрд░реЗрд╕ рд╣реИ?

рдЗрд╕реЗ рдЕрднреА рдПрдХреНрд╕рдкреНрд░реЗрд╕ рд╕реЗ рдкреБрдирдГ рдирд┐рд░реНрдпрд╛рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ:

рддреЛ рдЖрдкрдХреЛ Import { urlencoded, json } from '@feathersjs/express' рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП? рдпрд╛ рдЖрдк рдЗрд╕реЗ рдирд┐рд░реНрдпрд╛рдд рдХрд┐рдП рдЧрдП original ?

require('express') рдЬреЛ рдХреБрдЫ рднреА рдирд┐рд░реНрдпрд╛рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рд╡рд╣ @feathersjs/express рджреНрд╡рд╛рд░рд╛ рдкреБрдирдГ рдирд┐рд░реНрдпрд╛рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ: https://github.com/phersjs/express/blob/master/lib/index.js#L82

image
рд╕рд╛рде рд╣реА, рдХреНрдпрд╛ рдЖрдк рдЕрдЪреНрдЫреА рдкрд░рд┐рднрд╛рд╖рд╛рдУрдВ рдХреЗ рд╕рд╛рде channel.ts рд╕реЗ рдирд┐рдкрдЯрдирд╛ рдЬрд╛рдирддреЗ рд╣реИрдВ?
рдореБрдЭреЗ рдЦреЗрдж рд╣реИ рдХрд┐ рдЗрддрдиреЗ рдХрдо рд╕рдордп рдореЗрдВ рд╕рднреА рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рдЖрдк рдкрд░ рдбрд╛рд▓ рджрд┐рдпрд╛ред

рдЖрдпрд╛рдд рдХрд░реЗрдВ @types/feedsjs__socket-commons

рдЖрдпрд╛рдд ? рдореБрдЭреЗ рд╕рдордЭ рдирд╣реАрдВ рдЖрдпрд╛

рдХреНрд╖рдорд╛ рдХрд░реЗрдВ, рдЗрд╕реЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ 'рдЖрдпрд╛рдд @ рдкрдВрдЦрдЬ/рд╕реЙрдХреЗрдЯ-рдХреЙрдордиреНрд╕' рдХрд╣рдирд╛ рдЪрд╛рд╣рд┐рдПред рдЖрдкрдХреЛ рдЗрд╕рдХреЗ рдкреНрд░рдХрд╛рд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рдЕрдЧрд░ рдореИрдВ @types/feathersjs__feathers рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддрд╛ рд╣реВрдВ рддреЛ рдореЗрд░рд╛ app.channel рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдЕрдЧрд░ рдореИрдВ @types/feathersjs__socket-commons рдЬреЛрдбрд╝реВрдВ рддреЛ рдореЗрд░рд╛ app.on рдХрд╛рдо рдХрд░рдирд╛ рдмрдВрдж рдХрд░ рджреЗрддрд╛ рд╣реИред

рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЯрд╛рдЗрдк/рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЯрд╛рдЗрдк рдХрд┐рдпрд╛ рдЧрдпрд╛#23195 . рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рддрдп рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛

рдХреГрдкрдпрд╛ рдХреЛрдИ рдФрд░ рд╕рдорд╕реНрдпрд╛ рдпрд╣рд╛рдБ рдкрд░ рд▓реЗрдВ: https://github.com/phersjs-ecosystem/phers-typescript/issues

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

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

рд╡рд╣рд╛рдБ рдХрд┐рд╕реА рднреА рдХрд╛рд░рдг рд╣реИ рдХрд┐ рд╣рдо рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИ feathers.services.dogs рдХреЗ рдмрдЬрд╛рдп feathers.service('dogs') ?

рд╣рд╛рдВред feathers.service('dogs') рдХреЙрд▓ defaultService (рдЬреЛ рдХреНрд▓рд╛рдЗрдВрдЯ рдкрд░ рд╕реЗрд╡рд╛ рдХреЛ рддрддреНрдХрд╛рд▓ рдХрд░рддрд╛ рд╣реИ) рдФрд░ рд╕реЗрд╡рд╛ рдирд╛рдореЛрдВ рд╕реЗ рд╕реНрд▓реИрд╢ рд╣рдЯрд╛ рджреЗрддрд╛ рд╣реИред

рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкрд░рд┐рднрд╛рд╖рд╛рдПрдБ рдЕрдм рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЯрд╛рдЗрдк рдХреА рдЧрдИ рд╣реИрдВред

рдХреГрдкрдпрд╛ рдХрд┐рд╕реА рднреА рдореБрджреНрджреЗ рдФрд░ рдкреНрд░рд╢реНрдиреЛрдВ рдХреЛ https://github.com/phersjs-ecosystem/phers-typescript/issues рдкрд░ рдирд┐рд░реНрджреЗрд╢рд┐рдд

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

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

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

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

Vincz picture Vincz  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

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

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