Author:
    Creation:2026-01-21Last update:2026-01-21

    fastify-intlayer рдкреИрдХреЗрдЬ

    fastify-intlayer рдкреИрдХреЗрдЬ Fastify рдПрдкреНрд▓рд┐рдХреЗрд╢рдиреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреНрд▓рдЧрдЗрди рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ рдЬреЛ internationalization рдХреЛ рд╕рдВрднрд╛рд▓рддрд╛ рд╣реИред рдпрд╣ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреА locale рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рддрд╛ рд╣реИ рдФрд░ request рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЛ рд╕рдЬрд╛рддрд╛ рд╣реИред

    рд╕реНрдерд╛рдкрдирд╛

    bash
    npm install fastify-intlayer
    

    рдирд┐рд░реНрдпрд╛рдд

    рдкреНрд▓рдЧрдЗрди

    рдЗрдореНрдкреЛрд░реНрдЯ:

    tsx
    import "fastify-intlayer";
    
    рдлрд╝рдВрдХреНрд╢рди рд╡рд┐рд╡рд░рдг рд╕рдВрдмрдВрдзрд┐рдд рджрд╕реНрддрд╛рд╡реЗрдЬ
    intlayer Fastify plugin рдЬреЛ Intlayer рдХреЛ рдЖрдкрдХреЗ Fastify рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рдЗрдВрдЯреАрдЧреНрд░реЗрдЯ рдХрд░рддрд╛ рд╣реИред рд╕реНрдЯреЛрд░реЗрдЬ (cookies, headers) рд╕реЗ locale рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рддрд╛ рд╣реИ, request рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЛ intlayer рдбреЗрдЯрд╛ рдЬрд┐рд╕рдореЗрдВ t, getIntlayer, рдФрд░ getDictionary рд╢рд╛рдорд┐рд▓ рд╣реИрдВ, рдХреЗ рд╕рд╛рде рдбреЗрдХреЛрд░реЗрдЯ рдХрд░рддрд╛ рд╣реИ, рдФрд░ request lifecycle рдХреЗ рджреМрд░рд╛рди рдкреНрд░реЛрдЧреНрд░рд╛рдореИрдЯрд┐рдХ рдПрдХреНрд╕реЗрд╕ рдХреЗ рд▓рд┐рдП CLS namespace рд╕реЗрдЯрдЕрдк рдХрд░рддрд╛ рд╣реИред intlayer

    рдлрд╝рдВрдХреНрд╢рдиреНрд╕

    Import:

    tsx
    import "fastify-intlayer";
    
    рдлрд╝рдВрдХреНрд╢рди рд╡рд┐рд╡рд░рдг рд╕рдВрдмрдВрдзрд┐рдд рджрд╕реНрддрд╛рд╡реЗрдЬ
    t рдЧреНрд▓реЛрдмрд▓ рдЕрдиреБрд╡рд╛рдж рдлрд╝рдВрдХреНрд╢рди рдЬреЛ Fastify рдореЗрдВ рд╡рд░реНрддрдорд╛рди locale рдХреЗ рд▓рд┐рдП рдХрдВрдЯреЗрдВрдЯ рдкреНрд░рд╛рдкреНрдд рдХрд░рддрд╛ рд╣реИред CLS (Async Local Storage) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЗрд╕реЗ intlayer plugin рджреНрд╡рд╛рд░рд╛ рдореИрдиреЗрдЬ рдХрд┐рдП рдЧрдП request context рдХреЗ рднреАрддрд░ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдЗрд╕реЗ req.intlayer.t рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рднреА рдПрдХреНрд╕реЗрд╕ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред translation
    getIntlayer рдЬрдирд░реЗрдЯреЗрдб declaration рд╕реЗ key рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдПрдХ dictionary рдкреНрд░рд╛рдкреНрдд рдХрд░рддрд╛ рд╣реИ рдФрд░ рдирд┐рд░реНрджрд┐рд╖реНрдЯ locale рдХреЗ рд▓рд┐рдП рдЙрд╕рдХрд╛ рдХрдВрдЯреЗрдВрдЯ рд▓реМрдЯрд╛рддрд╛ рд╣реИред getDictionary рдХрд╛ optimized рд╕рдВрд╕реНрдХрд░рдгред request context рддрдХ рдкрд╣реБрдБрдЪрдиреЗ рдХреЗ рд▓рд┐рдП CLS рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред рдЗрд╕реЗ req.intlayer.getIntlayer рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рднреА рдПрдХреНрд╕реЗрд╕ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред -
    getDictionary рдбрд┐рдХреНрд╢рдирд░реА рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕ рдХреЛ рдкреНрд░реЛрд╕реЗрд╕ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдирд┐рд░реНрджрд┐рд╖реНрдЯ locale рдХреЗ рд▓рд┐рдП рд╕рд╛рдордЧреНрд░реА рд▓реМрдЯрд╛рддрд╛ рд╣реИред t() рдЕрдиреБрд╡рд╛рджреЛрдВ, enumerations, markdown, HTML, рдЖрджрд┐ рдХреЛ рдкреНрд░реЛрд╕реЗрд╕ рдХрд░рддрд╛ рд╣реИред request context рддрдХ рдкрд╣реБрдБрдЪрдиреЗ рдХреЗ рд▓рд┐рдП CLS рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред рдЗрд╕реЗ req.intlayer.getDictionary рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рднреА рдПрдХреНрд╕реЗрд╕ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред -