Typescript: рдореЙрдбреНрдпреВрд▓ рдкрде рдорд╛рдирдЪрд┐рддреНрд░ рдЙрддреНрд╕рд░реНрдЬрд┐рдд рдХреЛрдб рдореЗрдВ рд╣рд▓ рдирд╣реАрдВ рд╣реЛрддреЗ рд╣реИрдВ

рдХреЛ рдирд┐рд░реНрдорд┐рдд 12 рд╕рд┐рддре░ 2016  ┬╖  76рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: microsoft/TypeScript

рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕рдВрд╕реНрдХрд░рдг: 2.0.2

рдХреЛрдб

_tsconfig.json_

{
    "compilerOptions": {
        "target": "ES6",
        "module": "commonjs",
        "baseUrl": ".",
        "paths": {
            "foo/*": ["*"]
        }
    }
}

_app.ts_

import {Foo} from 'foo/utils';
console.log(Foo);

_utils.ts_

export const Foo = 'Foo';

рдЕрдкреЗрдХреНрд╖рд┐рддреН рд╡реНрдпрд╡рд╣рд╛рд░:

% ./node_modules/.bin/tsc && node app.js
Foo

рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╡реНрдпрд╡рд╣рд╛рд░:

% ./node_modules/.bin/tsc && node app.js
module.js:457
    throw err;
    ^

Error: Cannot find module 'foo/utils'
    at Function.Module._resolveFilename (module.js:455:15)
    at Function.Module._load (module.js:403:25)
    at Module.require (module.js:483:17)
    at require (internal/module.js:20:19)
    at Object.<anonymous> (/home/mfischer/src/videmo/tsc-test/app.js:2:17)
    at Module._compile (module.js:556:32)
    at Object.Module._extensions..js (module.js:565:10)
    at Module.load (module.js:473:32)
    at tryModuleLoad (module.js:432:12)
    at Function.Module._load (module.js:424:3)

_app.js_

"use strict";
const utils_1 = require('foo/utils');
console.log(utils_1.Foo);

рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕рд╣реА рдореЙрдбреНрдпреВрд▓ рдвреВрдВрдв рд░рд╣рд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЙрддреНрд╕рд░реНрдЬрд┐рдд рдХреЛрдб рдореЗрдВ, рдореЙрдбреНрдпреВрд▓ рдкрде рдХреЛ tsconfig.json рд╕реЗ рдкрде рдЙрдкрдирд╛рдореЛрдВ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп рдЫреЛрдбрд╝ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдиреЛрдб рдХреЛ рдкрддрд╛ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдореЙрдбреНрдпреВрд▓ рдХреЛ рдХрд╣рд╛рдВ рдЦреЛрдЬрдирд╛ рд╣реИред рдореИрдВ рдореЙрдбреНрдпреВрд▓ рдкрде рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреА рдЕрдкреЗрдХреНрд╖рд╛ рдХрд░рддрд╛ рдФрд░ рдЗрд╕реЗ рдХрд┐рд╕реА рдРрд╕реА рдЪреАрдЬрд╝ рд╕реЗ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддрд╛ рдЬреЛ рдиреЛрдб рд╣рд▓ рдХрд░ рд╕рдХреЗред

рдпрджрд┐ рдЗрд╕ рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд╛ рдЗрд░рд╛рджрд╛ рд╣реИ, рддреЛ рдиреЛрдб рдХреЗ рд╕рд╛рде рд╕рд╛рдкреЗрдХреНрд╖-рдЖрдпрд╛рдд-рдирд░рдХ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрде рдорд╛рдирдЪрд┐рддреНрд░реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреИрд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ?

Working as Intended

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

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

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

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

рдпрджрд┐ рдЗрд╕ рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд╛ рдЗрд░рд╛рджрд╛ рд╣реИ, рддреЛ рдиреЛрдб рдХреЗ рд╕рд╛рде рд╕рд╛рдкреЗрдХреНрд╖-рдЖрдпрд╛рдд-рдирд░рдХ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрде рдорд╛рдирдЪрд┐рддреНрд░реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреИрд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ?

рдареАрдХ рд╣реИ рдФрд░ рд╕рдВрджрд░реНрдн рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП, "paths" рдХреЛ рд▓реЛрдбрд░ рдХреЗ рд╕рд╛рде рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдЬреЛ Node.js require() рдХреЗ рд╡рд┐рдкрд░реАрдд рд░реАрдореИрдкрд┐рдВрдЧ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдЗрд░рд╛рджрд╛ рд╡реНрдпрд╡рд╣рд╛рд░ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рд╡рд┐рднрд┐рдиреНрди рд▓реЛрдбрд░ рджреНрд╡рд╛рд░рд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рд╡рд┐рднрд┐рдиреНрди рдореЙрдбреНрдпреВрд▓ рдЖрдИрдбреА рдХреЗ рд▓рд┐рдП рдкреНрд░рдХрд╛рд░ рдХреА рдЬрд╛рдирдХрд╛рд░реА рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдирд╛ рд╣реИ, рди рдХрд┐ рдореЙрдбреНрдпреВрд▓ рдЖрдИрдбреА рдХреЛ рдлрд┐рд░ рд╕реЗ рд▓рд┐рдЦрдирд╛ред рдореВрд▓ рд░реВрдк рд╕реЗ рдпрд╣ рд╡рд╣ рдирд╣реАрдВ рдХрд░рддрд╛ рдЬреЛ рдЖрдкрдиреЗ рд╕реЛрдЪрд╛ рдерд╛ рдХрд┐ рдЙрд╕рдиреЗ рдХрд┐рдпрд╛ред рди рд╣реА рдореЗрд░реА рд░рд╛рдп рдореЗрдВ, рдЗрд╕рдореЗрдВ рдХреЗрд╡рд▓ рд▓реЛрдбрд░ рдХреА рд╕рдВрдХрд▓реНрдк рд░рдгрдиреАрддрд┐рдпреЛрдВ рдХреЛ рдкреНрд░рддрд┐рдмрд┐рдВрдмрд┐рдд рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред

@mhegazy рдореБрдЭреЗ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдпрд╣ рд╕реАрдзреЗ рдиреЛрдб рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░реЗрдЧрд╛ред рдпрд╣ рдмреИрдХрдПрдВрдб рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рд▓рд┐рдП рд╣реИред рдХреНрдпрд╛ @kitsonk рдпрд╣ рдХрд╣рдиреЗ рдореЗрдВ рд╕рд╣реА рд╣реИ рдХрд┐ рдпрд╣ рдЗрд░рд╛рджрд╛ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИ рдФрд░ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЙрдбреНрдпреВрд▓ рдкрде рдХреЛ рдлрд┐рд░ рд╕реЗ рдирд╣реАрдВ рд▓рд┐рдЦреЗрдЧрд╛?

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

рд╕рдорд╛рди рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ https://github.com/Microsoft/TypeScript/issues/9910#issuecomment -234729007

рдареАрдХ рд╣реИ, рдзрдиреНрдпрд╡рд╛рджред рдЕрдзрд┐рдХ рд▓реЛрдЧреЛрдВ рдХреЛ рднреНрд░рдорд┐рдд рд╣реЛрдиреЗ рд╕реЗ рдмрдЪрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕реЗ рдмреЗрд╣рддрд░ рддрд░реАрдХреЗ рд╕реЗ рдкреНрд░рд▓реЗрдЦрд┐рдд рдХрд░рдирд╛ рдЙрдкрдпреЛрдЧреА рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдЕрдм рдореИрдВ рдЗрд╕реЗ рдиреЛрдб рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП https://www.npmjs.com/package/module-alias рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВред

рдЯреАрдПрд╕ рдХреА рд╕реНрдерд┐рддрд┐ рдХреА рд╕рд░рд╛рд╣рдирд╛ рдХрд░рддреЗ рд╣реБрдП, рд╣рдо рдореЗрдВ рд╕реЗ рдиреЛрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓реЛрдВ рдХреЗ рд▓рд┐рдП 90% рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЗ рдХрд╛ рдПрдХ рд╕рд░рд▓ рд╕рдорд╛рдзрд╛рди рд╣реИ, рд▓реЗрдХрд┐рди рдмрд┐рдирд╛ рдХрд┐рд╕реА рдЙрдкрджреНрд░рд╡ рдХреЗ baseUrl рд░рд┐рд╢реНрддреЗрджрд╛рд░ require() рдХреЙрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рд╕реБрд╡рд┐рдзрд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред

рдпрд╣ рд╕рдорд╛рдзрд╛рди рдиреЛрдб рдХреЗ require() рдХреЙрд▓ рдХреЛ рд╣реБрдХ рдХрд░рддрд╛ рд╣реИ, рдФрд░ baseUrl рдХреА рдирдХрд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП "main" рдХреЗ dirname рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЛ рд╣рд▓ рдХрд░рддрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП рдпрд╣ рдорд╛рдирддрд╛ рд╣реИ рдХрд┐ baseUrl рдХрдВрдкрд╛рдЗрд▓рд░ рд╡рд┐рдХрд▓реНрдк рднреА рдЙрд╕реА рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ рдЬрд╣рд╛рдВ рд╕реНрд░реЛрдд "main.ts" рд╕реНрдерд┐рдд рдерд╛ред

рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдХреЛрдб рдХреЗ рдЗрд╕ рдЫреЛрдЯреЗ рд╕реЗ рд╣рд┐рд╕реНрд╕реЗ рдХреЛ рдЕрдкрдиреЗ "main.ts" рдХреЗ рд╢реАрд░реНрд╖ рдкрд░ рдкреЗрд╕реНрдЯ рдХрд░реЗрдВред

import * as path from 'path'
import * as fs from 'fs'
(function() {
  const CH_PERIOD = 46
  const baseUrl = path.dirname(process['mainModule'].filename)
  const existsCache = {d:0}; delete existsCache.d
  const moduleProto = Object.getPrototypeOf(module)
  const origRequire = moduleProto.require
  moduleProto.require = function(request) {
    let existsPath = existsCache[request]
    if(existsPath === undefined) {
      existsPath = ''
      if(!path.isAbsolute(request) && request.charCodeAt(0) !== CH_PERIOD) {
        const ext = path.extname(request)
        const basedRequest = path.join(baseUrl, ext ? request : request + '.js')
        if(fs.existsSync(basedRequest)) existsPath = basedRequest
        else {
          const basedIndexRequest = path.join(baseUrl, request, 'index.js')
          existsPath = fs.existsSync(basedIndexRequest) ? basedIndexRequest : ''
        }
      }
      existsCache[request] = existsPath
    }
    return origRequire.call(this, existsPath || request)
  }
})()

рдпрджрд┐ рдЖрдк module-alias рдкреИрдХреЗрдЬ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдЬрд╛ рд░рд╣реЗ рд╣реИрдВ рдЬрд┐рд╕рдХрд╛ рдореАрдХрд╛-рдлрд┐рд╢рд░ рдиреЗ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рд╣реИ, рддреЛ рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рдкреИрдХреЗрдЬ рдореЗрдВ рдкрдВрдЬреАрдХреГрдд рдкрде / рдореЗрдВ рд╕рдорд╛рдкреНрдд рдирд╣реАрдВ рд╣реЛрдиреЗ рдЪрд╛рд╣рд┐рдП, рдФрд░ рдкрде рдкрде рдХреЗ рд╕рд╛рдкреЗрдХреНрд╖ рд╣реИрдВ рдЬрд╣рд╛рдВ package.json рд╣реИ (рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рд▓реЗрдХрд┐рди рдЗрд╕реЗ рд╕реНрдкрд╖реНрдЯ рдХрд░рдирд╛ рдЕрдЪреНрдЫрд╛ рд╣реИ),

рддреЛ рдЕрдЧрд░ рдЖрдкрдХреЗ рдкрд╛рд╕ рдпрд╣ рдЖрдкрдХреА tsconfig рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╣реИ:

"outDir": "./dist",
"baseUrl": ".",
"paths": {
  "foo/*": ["./src"]
}

рдЖрдкрдХреЛ рдЗрд╕реЗ рдЕрдкрдиреЗ package.json рдореЗрдВ рдкрдВрдЬреАрдХреГрдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛:

"_moduleAliases": {
  "foo": "dist"
}

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

рдПрдХ рдмрдбрд╝реЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рдЗрд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдореЗрдВ рдХреБрдЫ рд╕рдордп рдмрд░реНрдмрд╛рдж рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рдпрд╣рд╛рдВ рдЖрдпрд╛ред
рдпрджрд┐ рдпрд╣ рд╡реНрдпрд╡рд╣рд╛рд░ рдХрдо рд╕реЗ рдХрдо рдмрджрд▓рдиреЗ рд╡рд╛рд▓рд╛ рдирд╣реАрдВ рд╣реИ рддреЛ рдЖрдк рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдмрдВрдж рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рджрд╕реНрддрд╛рд╡реЗрдЬ https://www.typescriptlang.org/docs/handbook/module-resolution.html#path -mapping%20docs "рд▓реЛрдбрд░ рдЬреЛ рд░реАрдореИрдкрд┐рдВрдЧ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ" рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рднреА рдирд╣реАрдВ рдХрд╣рддрд╛ рд╣реИред

рдЕрдкрдиреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ "tspath" рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ рдФрд░ рдЪрд▓рд╛рдПрдВ... https://www.npmjs.com/package/tspath

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдЖрдк "momothepug/tsmodule-alias" рдХреЛ рдЙрд░реНрдл тАЛтАЛтАЛтАЛрдкрде рд░рд┐рдЬрд╝реЙрд▓реНрдпреВрд╢рди рдХреЗ рд▓рд┐рдП рдЖрдЬрд╝рдорд╛ рд╕рдХрддреЗ рд╣реИрдВ:

https://www.npmjs.com/package/@momothepug/tsmodule -alias

рдХреЗрд╡рд▓ https://www.npmjs.com/package/module-alias рдиреЗ рдореЗрд░реЗ рд▓рд┐рдП рдХрд╛рдо рдХрд┐рдпрд╛...

рдореИрдВ рднреА рдЗрд╕реЗ рдореЙрдбреНрдпреВрд▓-рдЙрдкрдирд╛рдо рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдореЗрдВ рдХрд╛рдордпрд╛рдм рд░рд╣рд╛, рдирдХрд╛рд░рд╛рддреНрдордХ рдкрдХреНрд╖ рдХреЗ рд╕рд╛рде рдХрд┐ рдореБрдЭреЗ рдЕрдкрдиреЗ рдЙрдкрдирд╛рдореЛрдВ рдХрд╛ рдЯреНрд░реИрдХ tsconfig.json рдФрд░ package.json рджреЛрдиреЛрдВ рдХреЗ рднреАрддрд░ рд░рдЦрдирд╛ рд╣реИред рдХреНрдпрд╛ рдХрд┐рд╕реА рдХреЛ рдПрдХ рдЖрд╕рд╛рди рд╕рдорд╛рдзрд╛рди рдорд┐рд▓рд╛ рд╣реИ?

@mattyclarkson рджреНрд╡рд╛рд░рд╛ рдмрддрд╛рдпрд╛ рдЧрдпрд╛ рд╕рдорд╛рдзрд╛рди рднреА рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдЗрд╕реЗ ts-node рдХреЗ рд╕рд╛рде-рд╕рд╛рде рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рдирд╣реАрдВ рдорд┐рд▓рд╛ред рдХреЛрдИ рд╡рд┐рдЪрд╛рд░?

https://github.com/momoThePug/tsmodule-alias рдкрд░ рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓реЗрдВ

2018-05-31 15:04 рдЬреАрдПрдордЯреА-05:00 edufschmidt рд╕реВрдЪрдирд╛рдПрдВ @github.com:

рдореИрдВ рднреА рдЗрд╕реЗ рдореЙрдбреНрдпреВрд▓-рдЙрдкрдирд╛рдо рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдореЗрдВ рдХрд╛рдордпрд╛рдм рд░рд╣рд╛, рдирдХрд╛рд░рд╛рддреНрдордХ рдкрдХреНрд╖ рдХреЗ рд╕рд╛рде
рдХрд┐ рдореБрдЭреЗ tsconfig.json рдФрд░ . рджреЛрдиреЛрдВ рдХреЗ рднреАрддрд░ рдЕрдкрдиреЗ рдЙрдкрдирд╛рдореЛрдВ рдХрд╛ рдЯреНрд░реИрдХ рд░рдЦрдирд╛ рд╣реИ
рдкреИрдХреЗрдЬ.рдЬреЗрд╕рди. рдХреНрдпрд╛ рдХрд┐рд╕реА рдХреЛ рдПрдХ рдЖрд╕рд╛рди рд╕рдорд╛рдзрд╛рди рдорд┐рд▓рд╛ рд╣реИ?

рд╕рдорд╛рдзрд╛рди @mattyclarkson . рджреНрд╡рд╛рд░рд╛ рдмрддрд╛рдпрд╛ рдЧрдпрд╛
https://github.com/mattyclarkson рднреА рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдХреЛрдИ рд░рд╛рд╕реНрддрд╛ рдирд╣реАрдВ рдорд┐рд▓рд╛
рдЗрд╕реЗ ts-node рдХреЗ рд╕рд╛рде-рд╕рд╛рде рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред рдХреЛрдИ рд╡рд┐рдЪрд╛рд░?

-
рдЖрдк рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдиреЗ рдЯрд┐рдкреНрдкрдгреА рдХреА рдереАред
рдЗрд╕ рдИрдореЗрд▓ рдХрд╛ рд╕реАрдзреЗ рдЙрддреНрддрд░ рджреЗрдВ, рдЗрд╕реЗ GitHub рдкрд░ рджреЗрдЦреЗрдВ
https://github.com/Microsoft/TypeScript/issues/10866#issuecomment-393662306 ,
рдпрд╛ рдереНрд░реЗрдб рдХреЛ рдореНрдпреВрдЯ рдХрд░реЗрдВ
https://github.com/notifications/unsubscribe-auth/ACKT9JWIkb0Wekz0H_Z3zKXvoE-49EIBks5t4EzkgaJpZM4J6vZQ
.

рдзрдиреНрдпрд╡рд╛рдж @DanyelMorales , рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЖрд╕рд╛рди рд╣реИред

рдЖрдкрдХрд╛ рд╕реНрд╡рд╛рдЧрдд рд╣реИ! :)

2018-05-31 16:35 GMT-05:00 edufschmidt [email protected] :

рдзрдиреНрдпрд╡рд╛рдж @DanyelMorales https://github.com/DanyelMorales , рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╣реИ
рдЖрд╕рд╛рдиред

-
рдЖрдк рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рдЗрд╕ рдИрдореЗрд▓ рдХрд╛ рд╕реАрдзреЗ рдЙрддреНрддрд░ рджреЗрдВ, рдЗрд╕реЗ GitHub рдкрд░ рджреЗрдЦреЗрдВ
https://github.com/Microsoft/TypeScript/issues/10866#issuecomment-393688075 ,
рдпрд╛ рдереНрд░реЗрдб рдХреЛ рдореНрдпреВрдЯ рдХрд░реЗрдВ
https://github.com/notifications/unsubscribe-auth/ACKT9GNo30wNv4ZWzSwm_Lv4vesLPI3xks5t4GIzgaJpZM4J6vZQ
.

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

рдЙрди рдЪреАрдЬреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рд╛рдкреЗрдХреНрд╖ рдкрде рдорд╛рдирдЪрд┐рддреНрд░рдг рдХреИрд╕реЗ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдЬреЛ рдореЙрдбреНрдпреВрд▓ рдирд╣реАрдВ рд╣реИрдВ, рдЕрд░реНрдерд╛рдд рдЖрдпрд╛рдд рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ?

рдПрдХ рдиреЛрдб рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдЬреЛ рдореЗрд░реЗ рджреНрд╡рд╛рд░рд╛ рдЙрдкрдпреЛрдЧ рдХреА рдЬрд╛рдиреЗ рд╡рд╛рд▓реА рд╕реНрд░реЛрдд рдлрд╝рд╛рдЗрд▓ рдХреЗ рд╕рд╛рдкреЗрдХреНрд╖ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЛ рдкрдврд╝рддрд╛ рд╣реИ:

const starterDir = path.resolve(__dirname, './templates/starter')

рдЪреВрдВрдХрд┐ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЗрд╕реЗ рдХрд┐рд╕реА рдЕрдиреНрдп рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ (рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЗ рдЖрдзрд╛рд░ рдкрд░) рдореЗрдВ рд▓рд┐рдЦрддрд╛ рд╣реИ, __dirname рдЕрдм рдЙрдкрд░реЛрдХреНрдд рдкрде рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреА рдУрд░ рдирд╣реАрдВ рд▓реЗ рдЬрд╛рдПрдЧрд╛ред рдЗрд╕рдХрд╛ рдХреНрдпрд╛ рд╕рдорд╛рдзрд╛рди рд╣реЛрдЧрд╛?

рдЙрди рдЪреАрдЬреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рд╛рдкреЗрдХреНрд╖ рдкрде рдорд╛рдирдЪрд┐рддреНрд░рдг рдХреИрд╕реЗ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдЬреЛ рдореЙрдбреНрдпреВрд▓ рдирд╣реАрдВ рд╣реИрдВ, рдЕрд░реНрдерд╛рдд рдЖрдпрд╛рдд рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ?

рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ "рдореИрдВ Node.js рдФрд░ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкреНрд░рд╢реНрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреИрд╕реЗ рдХрд░реВрдВ" рдФрд░ Gitter.im рдпрд╛ StackOverflow рдореЗрдВ рдмрд╣реБрдд рдмреЗрд╣рддрд░ рдкреВрдЫрд╛ рдЧрдпрд╛ рд╣реИред

рдореБрдЭреЗ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкрд╕рдВрдж рд╣реИ рд▓реЗрдХрд┐рди рдпрд╣ рдкрд╛рдЧрд▓рдкрди рд╣реИред

рдореБрдЭреЗ рд╕рдордЭ рдирд╣реАрдВ рдЖрдпрд╛ред рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдореЗрд░реЗ рдЯреАрдПрд╕ рдХреЛрдбрдмреЗрд╕ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╣реБрдд рдХрдо рдЬрд╛рдирдиреЗ рдХреЗ рдмрд╛рд╡рдЬреВрдж, рдЗрд╕реЗ рд▓рд╛рдЧреВ рдХрд░рдирд╛ рдХрдард┐рди рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдореИрдВрдиреЗ рдХреНрд▓рд╛рдЗрдВрдЯ рдФрд░ рд╕рд░реНрд╡рд░ рдХреЗ рд╕рд╛рде рдПрдХ рд╕рд╛рдЭрд╛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рджрд┐рдпрд╛ рд╣реИ ... рдЯреАрдПрд╕ рдкрде рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреЛ рдкрд╣рд▓реЗ рд╕реНрдерд╛рди рдкрд░ рдХреНрдпреЛрдВ рдкреНрд░рд╕реНрддреБрдд рдХрд░рддрд╛ рд╣реИ, рдлрд┐рд░ рдореБрдЭреЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реБрдкреНрд╕ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХреВрджрддрд╛ рд╣реИ? TS рдпрд╣ рдХреНрдпреЛрдВ рдорд╛рдирддрд╛ рд╣реИ рдХрд┐ рдореИрдВ рдЕрдкрдиреЗ рджреНрд╡рд╛рд░рд╛ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдкреНрд░рддреНрдпреЗрдХ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рд╕рд╛рде рдПрдХ рдмрдВрдбрд▓рд░/рд▓реЛрдбрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ? рдореИрдВ рдЕрдкрдиреА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЛ рд╕рд░рд▓ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЯреАрдПрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рди рдХрд┐ 90% рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдЯреАрдПрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХреА рднрд░рдкрд╛рдИ рдХреЗ рд▓рд┐рдП рдЕрдзрд┐рдХ рдЯреВрд▓рд┐рдВрдЧ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рд╕реЗ рдирд┐рдкрдЯрдиреЗ рдХреЗ рд▓рд┐рдПред

рдореИрдВ рдЖрдкрд╕реЗ рд╕рд╣рдордд рд╣реВрдБред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ, TS рдХреЛ рдлреНрд░рдВрдЯрдПрдВрдб рдХреЗ рд▓рд┐рдП рд╡рд┐рдХрд╕рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, 'рдХреНрдпреЛрдВрдХрд┐ рд╡реЗрдмрдкреИрдХ'
рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдХрд╛рдлреА рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ ts рдЙрдкрдирд╛рдо рдкрде рд▓рд╛рдЧреВ рдХрд░рддрд╛ рд╣реИ, рдФрд░ Requirejs рдХреЗ рд╕рд╛рде рднреА рд╣реИ
рд╡рд╣реА рдЪреАрдЬрд╝ред рд▓реЗрдХрд┐рди Nodejs рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдпрд╣ рдмрд╣реБрдд рдХрдард┐рди рд╣реИред :(

рдПрд▓ рдЬреВред, 20 рдбреЗ рд╕рд┐рддрдореНрдмрд░ред рдбреЗ 2018 02:50, рдЬреЛрд╢ рдкрд╛рдЗрдХ рдиреЛрдЯрд┐рдлрд┐рдХреЗрд╢рди @github.com
рд╡рд┐рд╡рд░рдг:

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

-
рдЖрдк рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рдЗрд╕ рдИрдореЗрд▓ рдХрд╛ рд╕реАрдзреЗ рдЙрддреНрддрд░ рджреЗрдВ, рдЗрд╕реЗ GitHub рдкрд░ рджреЗрдЦреЗрдВ
https://github.com/Microsoft/TypeScript/issues/10866#issuecomment-423077950 ,
рдпрд╛ рдереНрд░реЗрдб рдХреЛ рдореНрдпреВрдЯ рдХрд░реЗрдВ
https://github.com/notifications/unsubscribe-auth/ACKT9DD_z4KOHpfwddTomMXujEsza9tQks5uc0jbgaJpZM4J6vZQ
.

+1!

рд╡реЗрдмрдкреИрдХ рдореБрдЭреЗ рдкрде рдорд╛рдирдЪрд┐рддреНрд░реЛрдВ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░ рд╕рдХрддрд╛ рд╣реИ (рдпрд╛ рдЕрдиреНрдп рдЙрдкрдХрд░рдг babel-plugin-module-resolver рдкрд╕рдВрдж рдХрд░рддреЗ рд╣реИрдВ) рд▓реЗрдХрд┐рди рдШреЛрд╖рдгрд╛рдПрдВ рдирд╣реАрдВ ( .d.ts ) ред

рдШреЛрд╖рдгрд╛ рдореЗрдВ рд╕рднреА рдкрде рд╣рд▓ рдирд╣реАрдВ рд╣реЛрддреЗ рд╣реИрдВред

рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рднреА рднрд╛рдЧреЗред рддрд╛рд░реНрдХрд┐рдХ рд▓рдЧ рд░рд╣рд╛ рдерд╛ рдХрд┐ рдЙрддреНрд╕рд░реНрдЬрд┐рдд рдХреЛрдб рдореЗрдВ рдкрде рдорд╛рдирдЪрд┐рддреНрд░рдг рд╢рд╛рдорд┐рд▓ рд╣реЛрдЧрд╛ред рдореЙрдбреНрдпреВрд▓-рдЙрдкрдирд╛рдо рдХрд╛ рд╕рд╣рд╛рд░рд╛ рд▓рд┐рдпрд╛ред рд▓реЗрдХрд┐рди рд╡реИрдХрд▓реНрдкрд┐рдХ рд░реВрдк рд╕реЗ рдпрд╣ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд▓рд┐рдП +1ред

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

+1

рдЖрдк ts-transformer-imports рдФрд░ ttypescript рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕рд╛рдкреЗрдХреНрд╖ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рд▓рд┐рдП рдкреВрд░реНрдг рдФрд░ рдкрде-рдЖрдзрд╛рд░рд┐рдд рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЖрдпрд╛рдд рд╕рдВрдХрд▓рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ

рдореИрдВрдиреЗ рдПрдХ рд╕рдВрдХрд▓рди-рд╕рдордп рд╕рдорд╛рдзрд╛рди рдмрдирд╛рдпрд╛ рд╣реИ рдЬрд╣рд╛рдБ рдЖрдк tsc рдХрд╛ рдЙрдкрдпреЛрдЧ рдЬрд╛рд░реА рд░рдЦ рд╕рдХрддреЗ рд╣реИрдВред https://github.com/joonhocho/tscpaths

рдорд╛рдЗрдХреНрд░реЛрд╕реЙрдлреНрдЯ/рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ#15479 (рдЯрд┐рдкреНрдкрдгреА)

рдореИрдВ рдЗрд╕ рдореБрджреНрджреЗ рд╕реЗ рдЕрднреА-рдЕрднреА рдЖрдпрд╛ рд╣реВрдБ рдЬрдм d.ts рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдЖрдЙрдЯрдкреБрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП vue-cli рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░ рд░рд╣рд╛ рд╣реВрдБ рдЬрд╣рд╛рдБ рдмрд╣реБрдд рд╕рд╛рд░реЗ import {foo} from "@/some/folder/foo" рд╣реИрдВ рдФрд░ рдЖрдЙрдЯрдкреБрдЯ d.ts рдлрд╝рд╛рдЗрд▓реЗрдВ рдЙрдкрдирд╛рдо рдХреЛ рд╣рд▓ рдирд╣реАрдВ рдХрд░рддреА рд╣реИрдВред

рд╕рд╛рдорд╛рдиреНрдп рдЦреЛрдЬ рдФрд░ рдЗрд╕ рдзрд╛рдЧреЗ рдФрд░ рдЕрдиреНрдп рдХреЛ рджреЗрдЦрдиреЗ рд╕реЗ рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдШреБрдЯрдиреЗ рдХреЗ рдЭрдЯрдХреЗ рдХреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ "рдЯреАрдПрд╕ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╣ рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реИ" рд▓реЗрдХрд┐рди рдореИрдВ рдЯреАрдо рдХреЛ рдЙрд╕ рд░реБрдЦ рдХреЛ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдЧреНрд░рд╣ рдХрд░рддрд╛ рд╣реВрдВ рдЬреИрд╕реЗ рдХрд┐ рдЖрдк рдХрд╕реНрдЯрдо рдкрде рдЙрдкрдирд╛рдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ (рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдорд╛рдиреНрдп рдФрд░ рдЬрдЯрд┐рд▓ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдЕрдиреБрд╢рдВрд╕рд┐рдд рджреГрд╖реНрдЯрд┐рдХреЛрдг) рдЖрдк рдмрд╕ d.ts рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдЙрддреНрдкрдиреНрди рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ (рдмрд┐рдирд╛ рдХрд┐рд╕реА рдХрд╕реНрдЯрдо рддреГрддреАрдп рдкрдХреНрд╖ рдирд┐рд░реНрдорд╛рдг рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗ) рддреЛ рдореИрдВ рдХрд╣реВрдВрдЧрд╛ рдХрд┐ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрдВрдкрд╛рдЗрд▓рд░ рдХреЛ рдЗрди рдЙрдкрдирд╛рдореЛрдВ рдХреЛ рднреА рдШреЛрд╖рдгрд╛ рдлрд╝рд╛рдЗрд▓ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рднреА рд╣рд▓ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдХрдВрдкрд╛рдЗрд▓рд░реНрд╕ рдХрд╛ рдХрд╛рдо рдЖрдкрдХреА рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдлрд╛рдЗрд▓реЛрдВ рдХреЗ рд▓рд┐рдП рд╡реИрдз рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдФрд░ рдбреАрдЯреАрдПрд╕ рдлрд╛рдЗрд▓реЛрдВ рдХреЛ рдЖрдЙрдЯрдкреБрдЯ рдХрд░рдирд╛ рд╣реИ, рдФрд░ рдпрд╣ рдЗрд╕ рд╡реИрдз рдкрд░рд┐рджреГрд╢реНрдп рдореЗрдВ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ (tsconfig рдлрд╛рдЗрд▓реЛрдВ рдореЗрдВ рдкрде рдЙрдкрдирд╛рдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ)ред

рдореИрдВ рдЗрд╕ рдореБрджреНрджреЗ рдкрд░ рдереЛрдбрд╝рд╛ рднреНрд░рдорд┐рдд рд╣реВрдВред рдЗрд╕реЗ рдмрдВрдж рдХрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдФрд░ 'рдЗрдЪреНрдЫрд┐рдд рдХреЗ рд░реВрдк рдореЗрдВ рдХрд╛рдо рдХрд░рдирд╛' рд▓реЗрдмрд▓ рдХрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдХреНрдпрд╛ рдореБрдЭреЗ рд╕рдордЭ рдореЗрдВ рдЖ рд░рд╣рд╛ рд╣реИ рдХрд┐ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдЙрджреНрджреЗрд╢реНрдп рдЕрдорд╛рдиреНрдп рд╕реНрд░реЛрдд рдХреЛ рдЖрдЙрдЯрдкреБрдЯ рдХрд░рдирд╛ рд╣реИ? рдЕрдЬреАрдм рд▓рдЧрддрд╛ рд╣реИред

рднрд┐рдЦрд╛рд░реА рдЪрдпрдирдХрд░реНрддрд╛ рдирд╣реАрдВ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╕реЗ рд╡реЗрдирд┐рд▓рд╛ рдЬреЗрдПрд╕ рдХреЗ рдХрдИ рдирд┐рд░рд╛рд╢рд╛рдЬрдирдХ рдкрд╣рд▓реБрдУрдВ рд╕реЗ рдмрдЪрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдореИрдВ рд╕рд╛рдкреЗрдХреНрд╖ рдЖрдпрд╛рдд ('../../../../../utils/parser') рдХреЛ рдЙрдирдореЗрдВ рд╕реЗ рдПрдХ рдорд╛рдирддрд╛ рд╣реВрдВред рдпрд╣ рдЖрд╢реНрдЪрд░реНрдпрдЬрдирдХ рд╣реЛрдЧрд╛ рдпрджрд┐ рдЯрд╛рдЗрдкрдкреНрд░рддрд┐ рдЗрдиреНрд╣реЗрдВ рд╕рд╛рдл рдХрд░ рд╕рдХреЗ!

@codeitcody рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИред рдпрд╣ рдЧреВрдВрдЧрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдХреБрдЫ рдРрд╕рд╛ рдЖрдЙрдЯрдкреБрдЯ рдХрд░реЗрдЧрд╛ рдЬреЛ рдХрд┐рд╕реА рддреАрд╕рд░реЗ рдкрдХреНрд╖ рдХреЗ рдкреИрдХреЗрдЬ рдХреЗ рдмрд┐рдирд╛ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ рд▓реЗрдХрд┐рди рдпрд╣ рд╡рд╛рд╕реНрддрд╡рд┐рдХрддрд╛ рд╣реИред

рдЦреИрд░, рдХреНрдпрд╛ рдпрд╣ рдПрдХ рдЕрдЪреНрдЫреА рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реИред

рдпрд╣ рдПрдХ рдРрд╕реА рд╕реБрд╡рд┐рдзрд╛ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдкреНрд░рддрд┐рдХреВрд▓ рдкреНрд░рддреАрдд рд╣реЛрддрд╛ рд╣реИ рдЬреЛ рдЕрдирд┐рд╡рд╛рд░реНрдп рд░реВрдк рд╕реЗ рд╣реБрдкреНрд╕ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХреВрджрдиреЗ рдХреЗ рдмрд┐рдирд╛ рдЖрдкрдХреЗ рдРрдк рдХреЛ рдЕрдиреБрдкрдпреЛрдЧреА рдмрдирд╛рддрд╛ рд╣реИ (рдпрд╛рдиреА рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдзрд┐рдХ рдирд┐рд░реНрднрд░рддрд╛рдПрдВ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛)ред

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

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

@mhegazy рдХреНрдпрд╛ рдЖрдк рдпрд╛ рдХреЛрдИ рдФрд░ рд╣рдореЗрдВ рдмрддрд╛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдЕрдм рджреЛ рд╕рд╛рд▓ рдмрд╛рдж рд╢рд╛рдпрдж рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЯреАрдо рдЗрд╕ рдкрд░ рдлрд┐рд░ рд╕реЗ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдЧреА рдФрд░ рдкреБрдирд░реНрд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдЧреА?

рд╡реЗрдмрдкреИрдХ рдореБрдЭреЗ рдкрде рдорд╛рдирдЪрд┐рддреНрд░реЛрдВ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░ рд╕рдХрддрд╛ рд╣реИ (рдпрд╛ рдЕрдиреНрдп рдЙрдкрдХрд░рдг babel-plugin-module-resolver рдкрд╕рдВрдж рдХрд░рддреЗ рд╣реИрдВ) рд▓реЗрдХрд┐рди рдШреЛрд╖рдгрд╛рдПрдВ рдирд╣реАрдВ ( .d.ts ) ред

рдШреЛрд╖рдгрд╛ рдореЗрдВ рд╕рднреА рдкрде рд╣рд▓ рдирд╣реАрдВ рд╣реЛрддреЗ рд╣реИрдВред

рдХреНрдпрд╛ рдЗрд╕рдХреЛ рд╣рд╛рд╕рд┐рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рд░рд╛рд╕реНрддрд╛ рд╣реИ? рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рдХрд╕реНрдЯрдо рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдШрдЯрдХ рдкреБрд╕реНрддрдХрд╛рд▓рдп рд╣реИ рдФрд░ рдЙрдкрдирд╛рдо рдХреЗ рд▓рд┐рдП paths рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддреЗ рд╕рдордп рдореБрдЭреЗ рдпрд╣ рддреНрд░реБрдЯрд┐ рдорд┐рд▓реАред рдореИрдВ рд░реЛрд▓рдЕрдк рдХреЗ рд╕рд╛рде 2 рдмрдВрдбрд▓ рдХрд░рддрд╛ рд╣реВрдВ рдФрд░ --emitDeclarationOnly . рдХреЗ рд╕рд╛рде рдкреНрд░рдХрд╛рд░ рдХрд░рддрд╛ рд╣реВрдВ

рдореИрдВ рдореЙрдбреНрдпреВрд▓-рдЙрдкрдирд╛рдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдХрд╣рддрд╛ рд╣реИ:

рдЪреЗрддрд╛рд╡рдиреА: рдЗрд╕ рдореЙрдбреНрдпреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдЕрдиреНрдп npm рдореЙрдбреНрдпреВрд▓ рдореЗрдВ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рддрд╛ рд╣реИ!

рдХреГрдкрдпрд╛ рдЗрд╕ рдкреЛрд╕реНрдЯ рдХреЛ рд░реЗрдбрд┐рдЯ рдкрд░ рдЕрдкрд╡реЛрдЯ рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░реЗрдВ: https://www.reddit.com/r/typescript/comments/a07jlr/path_maps_cannot_be_resolved_by_tsc_works_as/
рдкрддрд╛ рдирд╣реАрдВ рдЗрд╕реЗ рдпрд╣рд╛рдБ рдЗрддрдиреА рдмрдбрд╝реА рдЪрд░реНрдЪрд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреНрдпреЛрдВ рд╣реИред рдЗрд╕ рдмрдЧ рдХреЛ рд╣рд▓ рдХрд░рдирд╛ рдЖрд╕рд╛рди рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред Tsconfig рдореЗрдВ рдПрдХ рд╡рд┐рдХрд▓реНрдк рдФрд░ рд╣рд░ рдХреЛрдИ рдпрд╣ рддрдп рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рд╡рд╣ рд╡рд░реНрддрдорд╛рди рд╡реНрдпрд╡рд╣рд╛рд░ (рдХрд┐рд╕реА рднреА рдХрд╛рд░рдг рд╕реЗ) рдпрд╛ рдПрдХ рдХрд╛рд░реНрдпрд╢реАрд▓ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдЪрд╛рд╣рддрд╛ рд╣реИред

рд╣рдореЗрдВ рдбреНрд░реЙрдкрдмреЙрдХреНрд╕ рдореЗрдВ рднреА рдпрд╣реА рд╕рдорд╕реНрдпрд╛ рдереА рдФрд░ рдЗрд╕ рдЯреНрд░рд╛рдВрд╕рдлрд╛рд░реНрдорд░ рдХреЛ рдУрдкрди-рд╕реЛрд░реНрд╕ рдХрд┐рдпрд╛ https://github.com/dropbox/ts-transform-import-path-rewrite

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

рдЖрдЙрдЪред рдпрд╣ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд▓рд┐рдП рдПрдХ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдЭрдЯрдХрд╛ рд╣реИред рдЗрд╕рдореЗрдВ рд╕рдордЭрджрд╛рд░реА рдХрд╣рд╛рдВ рд╣реИ?

рдкреАрдПрд╕ рдХреНрдпрд╛ рд╣рдо рдХреЗрд╡рд▓ +1 . рдкрд░ рдЯрд┐рдкреНрдкрдгреА рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ

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

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

@ рдорд┐рдХрд╛-рдлрд┐рд╢рд░
https://www.npmjs.com/package/module-alias рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреИрд╕реЗ рдХрд░реЗрдВ рддрд╛рдХрд┐ рдПрд╕реНрд▓рд┐рдВрдЯ 'рдЕрдирд╕реБрд▓рдЭреЗ рдкрде' @root/bla/bla' (рдЬреЗрдПрд╕ рдлрд╛рдЗрд▓реЛрдВ рдореЗрдВ) рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЪреЗрддрд╛рд╡рдиреА рджреЗрдирд╛ рдмрдВрдж рдХрд░ рджреЗ? рдФрд░ рд╡реЗрдмрд╕реНрдЯреЙрд░реНрдо рдФрд░ рд╡реАрдПрд╕ рдХреЛрдб рдореЗрдВ рдРрд╕реЗ рдкрдереЛрдВ рдХреЗ рд▓рд┐рдП рд╕реНрд╡рдд: рдкреВрд░реНрдгрддрд╛ рдХреИрд╕реЗ рд╕рдХреНрд╖рдо рдХрд░реЗрдВ?

рдореЗрд░реЗ рд▓рд┐рдП, рд╕реНрд╡рдд: рдкреВрд░реНрдг рдЖрдпрд╛рдд VSCode рдореЗрдВ рдЯрд╛рдЗрдкрдкреНрд░рддрд┐ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред

@bobmoff рд╣рд╛рдБ, рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ TS рдлрд╝рд╛рдЗрд▓реЛрдВ рд╕реЗ TS рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдЖрдпрд╛рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдм рдХреБрдЫ рдЕрдЪреНрдЫрд╛ рд╣реИред
рд▓реЗрдХрд┐рди TS рдлрд╛рдЗрд▓реЛрдВ рд╕реЗ `require('@root/bla/bla') рдХреЗ рд▓рд┐рдП рд╕реНрд╡рдд: рдкреВрд░реНрдгрддрд╛ рдФрд░ рдиреЗрд╡рд┐рдЧреЗрд╢рди рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред

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

рдХреНрдпреЛрдВрдХрд┐ рдЕрдЧрд░ рдореИрдВ рдЯреАрдПрд╕ рдХреЗ рд▓рд┐рдП рд╕рд┐рд░реНрдл рдПрдХ рдЬреЗрдПрд╕ рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдирд╛рдо рдмрджрд▓рддрд╛ рд╣реВрдВ, рддреЛ build рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рд╕рднреА рд╕рд╛рдкреЗрдХреНрд╖ рдкрде рдЯреВрдЯ рдЧрдП (рд╢рд╛рдпрдж рдореБрдЭреЗ "allowJs: true" рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП, рд▓реЗрдХрд┐рди рдореЗрд░реЗ рдкрд╛рд╕ 2 рдЧреАрдЧрд╛рдмрд╛рдЗрдЯ рдЬреЗрдПрд╕ рдлрд╛рдЗрд▓реЛрдВ рдХреЗ рд╕рд╛рде рдПрдХ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╣реИ, рдРрд╕рд╛ рд╣реИ рдЙрдиреНрд╣реЗрдВ рдмрд┐рд▓реНрдб dir %) рдореЗрдВ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдЬреАрдм)ред
рдареАрдХ рд╣реИ, рдореИрдВ рдореЙрдбреНрдпреВрд▓-рдЙрдкрдирд╛рдореЛрдВ рджреНрд╡рд╛рд░рд╛ рдЗрд╕реЗ рд╣рд▓ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рдФрд░ рдореЗрд░реЗ рдЖрдИрдбреАрдИ рдХреЗ рдиреЗрд╡рд┐рдЧреЗрд╢рди рдФрд░ рд╕реНрд╡рдд: рдкреВрд░реНрдгрддрд╛ рдХрд╛рдо рдХрд░рдирд╛ рдмрдВрдж рдХрд░ рджреЗрддреА рд╣реИ рдФрд░ рдПрд╕реНрд▓рд┐рдВрдЯ 100500 'рдЕрдирд╕реБрд▓рдЭреЗ рдкрде' рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЪреЗрддрд╛рд╡рдиреА рджреЗрддрд╛ рд╣реИред рдореИрдВ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЯреАрдПрд╕ рд╕реЗ рдереЛрдбрд╝рд╛ рдирдлрд░рдд рдХрд░рддрд╛ рд╣реВрдВ, рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдмрдбрд╝реА рдЬреЗрдПрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдорд╛рдЗрдЧреНрд░реЗрд╢рди рдЗрддрдирд╛ рдЖрд╕рд╛рди рдирд╣реАрдВ рд╣реИ рдЬрд┐рддрдирд╛ рдЯреАрдПрд╕-рдорд╛рд░реНрдХреЗрдЯрд┐рдВрдЧ рд▓реЛрдЧ рдХрд╣рддреЗ рд╣реИрдВред рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдорд╛рдЗрдЧреНрд░реЗрд╢рди рдЬреЗрдПрд╕ рдмреИрдХрдПрдВрдб рдкреНрд░реЛрдЬреЗрдХреНрдЯреНрд╕ рдХреЛ рдЧреЛрд▓рд╛рдВрдЧ рдореЗрдВ рдЕрдзрд┐рдХ рд╕рд░рд▓ рд╣реИ :)

рдореИрдВ рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рдХреЗ рд░реВрдк рдореЗрдВ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ tscpaths рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред

рдореИрдВ рднреАред рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ tscpaths рдХреА рдЕрдиреБрд╢рдВрд╕рд╛ рдХрд░рддрд╛ рд╣реВрдВред рдЬреИрд╕рд╛ рдЪрд╛рд╣рд┐рдП рд╡реИрд╕рд╛ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред

рдореЗрд░рд╛ рд╕рд░рд▓ рдЙрдкрд╛рдп:

node -r ts-node/register/transpile-only -r tsconfig-paths/register index.js

рдпрд╛ pm2 process.yml . рдХреЗ рд╕рд╛рде

apps:
  - name: 'my-app'
    script: './dist/index.js'
    instances: 'max'
    exec_mode: 'cluster'
    out_file : '/dev/null'
    error_file : '/dev/null'
    node_args: ['--require=ts-node/register/transpile-only', '--require=tsconfig-paths/register']
    env_production:
      NODE_ENV: production

рдмрд╕ рдЗрд╕ рдкрд░ рдареЛрдХрд░ рдЦрд╛рдИ, рдХрднреА-рдХрднреА рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЧрдзреЗ рдореЗрдВ рдПрдХ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рджрд░реНрдж рд╣реЛ рд╕рдХрддрд╛ рд╣реИред

рдореБрдЭреЗ рдЧрдВрднреАрд░рддрд╛ рд╕реЗ рд╕рдордЭ рдореЗрдВ рдирд╣реАрдВ рдЖрддрд╛ рдХрд┐ рдпрд╣ рдзрд╛рдЧрд╛ рдХреНрдпреЛрдВ рдФрд░ рдЖрдЧреЗ рдФрд░ рдЖрдЧреЗ рдмрдврд╝рддрд╛ рд╣реИ ....
рд╣рдо рд╕рднреА "рдкрде рдирд░рдХ" рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирддреЗ рд╣реИрдВ, рдФрд░ рдЖрдк (рдЙрдкрдирд╛рдореЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ) рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ
рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рд╛рдл
рдЙрд╕ рдЧрдбрд╝рдмрдбрд╝ рдХреЛ, рдЗрд╕ рд╕реВрддреНрд░ рдореЗрдВ рд╣рд░ рдХреЛрдИ рдпрд╣ рдЬрд╛рдирддрд╛ рд╣реИ!

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

....рдпрд╛ Apple, Google рдФрд░ Microsoft рдкрд░ рдереНрд░реЗрдб рдкреНрд░рд╛рд░рдВрдн рдХрд░реЗрдВ
рдЙрдиреНрд╣реЗрдВ рдЕрдкрдиреЗ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЗрдВрдЬрди рдореЗрдВ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣рдирд╛ рддрд╛рдХрд┐
рд╡реЗ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ
рдЕрдкрдиреЗ рдЙрдкрдирд╛рдореЛрдВ рдХреА рд╡реНрдпрд╛рдЦреНрдпрд╛ рдХрд░реЗрдВ ;-)

рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрдВрдкрд╛рдЗрд▓рд░ рдареАрдХ рд╡рд╣реА рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдЙрд╕реЗ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП!

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

рдФрд░ рд╣рд╛рдБ, "tsmodule-alias" рдФрд░ рдЗрд╕реА рддрд░рд╣ рдХреЗ рд╣реИрдХреНрд╕ рдЬреИрд╕реЗ рдЙрдкрдХрд░рдг рд╣реИрдВ, рдЖрдк рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ
рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕реЗ рдХрд╛рдо рдХрд░реЗрдВ
рдпрджрд┐ рдЖрдк рдмрд╣реБрдд рд╕рд╛рд╡рдзрд╛рди рд╣реИрдВ, рд▓реЗрдХрд┐рди рдпрд╣ рдПрдХ рдЧрдбрд╝рдмрдбрд╝ рд╣реИ, рддреЛ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдорд╛рдзрд╛рди рд╣реИрдВ
рдЯреАрдПрд╕-рдиреЛрдб,
рд╢реЗрд▓ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЖрджрд┐ рдЖрджрд┐ ... рдпрдбреНрдбрд╛ рдпрд╛рдж

рдореБрдЭреЗ рдЕрдВрдд рдореЗрдВ рд▓рдЧрд╛ рдХрд┐ рдмрд╣реБрдд рд╣реЛ рдЧрдпрд╛ рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ рдЦреБрдж рдХреЛ рдмрдВрдж рдХрд░ рд▓рд┐рдпрд╛ рдФрд░ рдмрдирд╛ рд▓рд┐рдпрд╛
рддреНрд╕рдкрд╛рде
рд╕рдВрдХрд▓рди рд╕рдордп рдЙрдкрдирд╛рдо

> npm рдЗрдВрд╕реНрдЯрд╛рд▓ -g tspatj

рдорд╛рдИрдкреНрд░реЛрдЬреЗрдХреНрдЯ> рдЯреАрдПрд╕рд╕реА

рдорд╛рдИрдкреНрд░реЛрдЬреЗрдХреНрдЯ> рдЯреАрдПрд╕рдкреАрде

рдпрд╛

рдорд╛рдИрдкреНрд░реЛрдЬреЗрдХреНрдЯ> рдЯреАрдПрд╕рдкреАрде --f

рд╣реЗрдбрд▓реЗрд╕ (рдмрд┐рд▓реНрдб рд╕рд░реНрд╡рд░ рдкрд░ рдмрд╣реБрдд рдЙрдкрдпреЛрдЧреА рд╕рд╛рдмрд┐рдд рд╣реБрдЖ)

рдФрд░ рдлрд┐рд░ рдЖрдкрдХрд╛ рдХрд╛рдо рд╣реЛ рдЧрдпрд╛, рдЖрдкрдХреА рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдлрд╛рдЗрд▓реЛрдВ рдореЗрдВ рдЕрдм
рд╕рд╣реА рд╕рд╛рдкреЗрдХреНрд╖ рдкрде, рд╣реИ рдирд╛ рдХрд┐ рд╣рдо рдпрд╣рд╛рдБ рдХреНрдпрд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ?

рдЪреАрдпрд░реНрд╕! :)

https://www.npmjs.com/package/tspath

рдбреЗрди рдмреЗрдЯрд╛ 13 рдЬрдирд╡рд░реАред 2019 kl 22:20 Skrev Fabio Spampinato <
рд╕реВрдЪрдирд╛рдПрдВ@github.com>:

рдмрд╕ рдЗрд╕ рдкрд░ рдареЛрдХрд░ рдЦрд╛рдИ, рдХрднреА-рдХрднреА рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдПрдХ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рджрд░реНрдж рд╣реЛ рд╕рдХрддрд╛ рд╣реИ
рдЧрдзрд╛

-
рдЖрдк рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдиреЗ рдЯрд┐рдкреНрдкрдгреА рдХреА рдереАред
рдЗрд╕ рдИрдореЗрд▓ рдХрд╛ рд╕реАрдзреЗ рдЙрддреНрддрд░ рджреЗрдВ, рдЗрд╕реЗ GitHub рдкрд░ рджреЗрдЦреЗрдВ
https://github.com/Microsoft/TypeScript/issues/10866#issuecomment-453866553 ,
рдпрд╛ рдереНрд░реЗрдб рдХреЛ рдореНрдпреВрдЯ рдХрд░реЗрдВ
https://github.com/notifications/unsubscribe-auth/AAAy_7JYrwYo3KOLxpLWP0np5JVz2kQzks5vC6MogaJpZM4J6vZQ
.

@рдбрдлрдореИрди

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

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

рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдЙрд╕ рдХреЛрдб рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдЬреЛ _works_ рдЙрд╕ рдХрд╛рд░реНрдп рдХреЛ рдкреВрд░рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рд╕реА рддреГрддреАрдп-рдкрдХреНрд╖ рдЯреВрд▓ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЗ рдмрд┐рдирд╛ рдЬреЛ рдХреЗрд╡рд▓ рдореВрд▓ рд╕рдВрдХрд▓рдХ рдореЗрдВ рдЖрдВрд╢рд┐рдХ рд░реВрдк рд╕реЗ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред

рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрдВрдкрд╛рдЗрд▓рд░ рдареАрдХ рд╡рд╣реА рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдЙрд╕реЗ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП!

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

рдФрд░ рдпрд╣ рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп рдХреЛрдб рдЙрддреНрдкрдиреНрди рдХрд░ рд░рд╣рд╛ рд╣реИ рдпрджрд┐ рдЖрдк рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ рдЬреЛ рд╣реИ
JavaScript Engines рджреНрд╡рд╛рд░рд╛ рд╕рдорд░реНрдерд┐рдд рдирд╣реАрдВ рд╣реИ, рдЬреЛ рдХрд┐ рдмрд╣реБрдд рд╕рд╣реА рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИ
рд╡рд╣рд╛рдБ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП: рдХреНрдпрд╛ рдЖрдк C++ рдХрдВрдкрд╛рдЗрд▓рд░ рдХреЛ рджреЛрд╖ рджреЗрдВрдЧреЗ рдпрджрд┐ рдЖрдкрдХрд╛ application
рдЧрддрд┐рд╢реАрд▓ рд▓рд┐рдВрдХ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдпрд╣ рдХрд┐ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдорд╢реАрди рдкрд░ рдирд╣реАрдВ рдЪрд▓реЗрдЧрд╛
рдХрд┐ рдЗрди рд╕реНрдерд╛рдкрд┐рдд рдирд╣реАрдВ рд╣реИ?

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

рдпрджрд┐ рдЖрдк рдпрд╣ рдирд╣реАрдВ рд╕рдордЭрддреЗ рд╣реИрдВ рдХрд┐ рдХрд╛рд░реНрдп рд╡рд╛рддрд╛рд╡рд░рдг рдХреИрд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдП, рддреЛ рдЙрдирдХрд╛ рдЙрдкрдпреЛрдЧ рди рдХрд░реЗрдВ,
рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдирд╣реАрдВ рд╕реЛрдЪрддрд╛ рдХрд┐ рдпрд╣ рдпрд╣рд╛рдБ Microsoft рдХреА рдЬрд╝рд┐рдореНрдореЗрджрд╛рд░реА рд╣реИ, рд╡реЗ
рдПрдХ рд╕реБрд╡рд┐рдзрд╛ рдкреНрд░рджрд╛рди рдХреА рдФрд░ рдпрд╣рд╛рдВ рдмрддрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ,
рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдХрд╛рдо рди рдХрд░реЗ рдЬреИрд╕рд╛ рдЖрдк рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдпрд╛ рдпрд╣ рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдЕрдкреЗрдХреНрд╖рд╛ рдХрд░рддрд╛ рд╣реИ рд▓реЗрдХрд┐рди рдРрд╕рд╛ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ
рдпрд╣ рдЧрд▓рдд рд╣реИ!

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

рдбреЗрди рдореЛрди 14 рдЬрдирд╡рд░реАред 2019 kl 21:34 skrev рд░реЙрдмрд░реНрдЯ рдореБрдЦреНрдп рд╕реВрдЪрдирд╛рдПрдВ @github.com :

рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрдВрдкрд╛рдЗрд▓рд░ рдареАрдХ рд╡рд╣реА рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдЙрд╕реЗ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП!

рдЕрдЧрд░ рдпрд╣ рдзрд╛рдЧрд╛ рдЙрди рд▓реЛрдЧреЛрдВ рд╕реЗ рднрд░рд╛ рд╣реБрдЖ рдерд╛ рдЬреЛ рдпрд╣ рдЕрдиреБрд░реЛрдз рдХрд░ рд░рд╣реЗ рдереЗ рдХрд┐ tsc рднреА рдХрд░реЗрдВ
minification рдпрд╛ рдХреБрдЫ рдРрд╕реЗ, рдореИрдВ рдЖрдкрд╕реЗ рд╕рд╣рдордд рд╣реВрдБред рд╣рд╛рд▓рд╛рдВрдХрд┐ рдРрд╕рд╛ рдирд╣реАрдВ рд╣реИред рдпрд╣ рд╣реИ
рд▓реЛрдЧ рдЕрдиреБрд░реЛрдз рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рд╕рдВрдХрд▓рдХ рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп рдХреЛрдб рдЙрддреНрдкрдиреНрди рдХрд░рддрд╛ рд╣реИред рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ
рдРрд╕рд╛ рдордд рд╕реЛрдЪреЛ рдХрд┐ рдПрдХ рдХрдВрдкрд╛рдЗрд▓рд░ рд╕реЗ рдкреВрдЫрдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдХреБрдЫ рд╣реИ, рд╣реИ рдирд╛?

-
рдЖрдк рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рдЗрд╕ рдИрдореЗрд▓ рдХрд╛ рд╕реАрдзреЗ рдЙрддреНрддрд░ рджреЗрдВ, рдЗрд╕реЗ GitHub рдкрд░ рджреЗрдЦреЗрдВ
https://github.com/Microsoft/TypeScript/issues/10866#issuecomment-454151277 ,
рдпрд╛ рдереНрд░реЗрдб рдХреЛ рдореНрдпреВрдЯ рдХрд░реЗрдВ
https://github.com/notifications/unsubscribe-auth/AAAy_7FeuOJAnI9bXYSVgf_YghJluTyGks5vDOnEgaJpZM4J6vZQ
.

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

рдпрд╣ рдПрдХ рдРрд╕реА рд╕реБрд╡рд┐рдзрд╛ рд╣реИ рдЬреЛ рдХрдВрдкрд╛рдЗрд▓рд░ рдЖрдЙрдЯрдкреБрдЯ рдХреЛ рдЯреВрдЯрд╛ рд╣реБрдЖ рдХреЛрдб рдмрдирд╛рддреА рд╣реИ, рдХреЛрдб рдЬреЛ рдХрд╛рдо рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдпрджрд┐ рдЙрдиреНрд╣реЛрдВрдиреЗ рдЙрди рдкрдереЛрдВ рдХреЛ рдареАрдХ рд╕реЗ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдб рдХреА рдХреЗрд╡рд▓ 1 рдкрдВрдХреНрддрд┐ рд▓рд┐рдЦреА рд╣реИред

рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ рдЯреАрдПрд╕ рдХреЛ рдмрд╛рд╣рд░реА рдмрдВрдбрд▓рд░ рдХреА рдЬрд░реВрд░рдд рд╣реИ рддрд╛рдХрд┐ рдЖрдЙрдЯрдкреБрдЯ рдХреЛрдб рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХреЗ, рд╕рд╛рджрд╛ рд╣рд╛рд╕реНрдпрд╛рд╕реНрдкрдж рд╣реИред

рдФрд░ рдпрд╣ рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп рдХреЛрдб рдЙрддреНрдкрдиреНрди рдХрд░ рд░рд╣рд╛ рд╣реИ рдпрджрд┐ рдЖрдк рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ рдЬреЛ рд╣реИ
рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЗрдВрдЬрди рджреНрд╡рд╛рд░рд╛ рдЕрд╕рдорд░реНрдерд┐рдд,

рдореИрдВрдиреЗ рд╣рдореЗрд╢рд╛ рд╕рдордЭрд╛ рд╣реИ рдХрд┐ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдерд╛ред рдпрджрд┐ рдЖрдк рдореБрдЭреЗ рдмрддрд╛ рд░рд╣реЗ рд╣реИрдВ рдХрд┐ рдХреБрдЫ рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЗрдВрдЬрди рджреНрд╡рд╛рд░рд╛ рд╕рдорд░реНрдерд┐рдд рдирд╣реАрдВ рд╣реИрдВ рддреЛ рд╡реЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╡рд╣рд╛рдВ рдХреНрдпреЛрдВ рд╣реИрдВ?

рдХреНрдпрд╛ рдЖрдк рд╕реА ++ рдХрдВрдкрд╛рдЗрд▓рд░ рдХреЛ рджреЛрд╖ рджреЗрдВрдЧреЗ рдпрджрд┐ рдЖрдкрдХрд╛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдбрд╛рдпрдиреЗрдорд┐рдХ рд▓рд┐рдВрдХ рд▓рд╛рдЗрдмреНрд░реЗрд░реАрдЬрд╝ рдФрд░ рдпрд╣ рдХрд┐ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдорд╢реАрди рдкрд░ рдирд╣реАрдВ рдЪрд▓реЗрдЧрд╛, рдЗрди рд╕реНрдерд╛рдкрд┐рдд рдирд╣реАрдВ рд╣реИ?

рдирд╣реАрдВ, рд▓реЗрдХрд┐рди рдореИрдВ рдЗрд╕реЗ рджреЛрд╖ рджреВрдВрдЧрд╛ рдЕрдЧрд░ рдпрд╣ рдореБрдЭреЗ рдЕрдиреНрдп рд╕реА ++ рдХреЛрдб рд╕реЗ рд▓рд┐рдВрдХ рдХрд░рдиреЗ рджреЗрддрд╛ рд╣реИ рдЬреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХреЛрдИ рдХрдВрдкрд╛рдЗрд▓рд░ рддреНрд░реБрдЯрд┐ рдпрд╛ рдЪреЗрддрд╛рд╡рдиреА рдХреЗ рд╕рд╛рде рдореМрдЬреВрдж рдирд╣реАрдВ рдерд╛ред

рдЖрдк рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдпрд╣ рдирд╣реАрдВ рд╕рдордЭрддреЗ рд╣реИрдВ, рд╣реИ рдирд╛? рдХреЛрдб рдЯреВрдЯрд╛ рдирд╣реАрдВ рд╣реИ, рдЕрдЧрд░ рдпрд╣ рд╣реИ
рдЯреВрдЯрд╛ рд╣реБрдЖ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдиреЗ рдХрдВрдкрд╛рдЗрд▓рд░ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдпрд╛ рд╣реИ
рдХреЛрдб рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЬреЛ рдЖрдкрдХрд╛ "рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо" рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ,
рдЙрдкрдирд╛рдо!

рдЖрдкрдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдЙрдкрдирд╛рдореЛрдВ рдХрд╛ рдкреНрд░рдпреЛрдЧ рди рдХрд░реЗрдВ, "рдЖрдк" рдЙрдирдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддреЗ, рдЧрдВрднреАрд░рддрд╛ рд╕реЗ!

рднрд▓реЗ рд╣реА рдпрд╣ рдПрдХ 1 рд▓рд╛рдЗрди рдлрд┐рдХреНрд╕ рд╣реЛрдЧрд╛ (рдмреЗрд╢рдХ рдпрд╣ рдорд╛рдорд▓рд╛ рдирд╣реАрдВ рд╣реИ) it┬┤sa
рдПрдХ рдХрдВрдкрд╛рдЗрд▓рд░ рдХреЛ рдХреНрдпрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░
рдирд╣реАрдВ рдХрд░рдиреА рдЪрд╛рд╣рд┐рдП! рдпрд╣ рдлреАрдЪрд░ рд▓реЛрдбрд░реНрд╕ рдХреЛ рд╕рдкреЛрд░реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ рд╣реИ
рджреВрд╕рд░реА рддрд░рдл, рдкрдврд╝реЗрдВ
рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рдореЗрдВ рдкрде рдорд╛рдирдЪрд┐рддреНрд░рдг рдкрд░, рдлрд┐рд░ рд╕реЗ, рдЖрдк рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ
рдЧрд▓рдд!

рдлрд┐рд░ рд╕реЗ, рдпрд╣ рд╕реБрд╡рд┐рдзрд╛ рд▓реЛрдбрд░/рд░рд┐рдЬрд╝реЙрд▓реНрд╡рд░ рдХреЗ рд▓рд┐рдП рд╣реИ, рдЖрдкрдиреЗ рдЧрд▓рдд рд╕рдордЭрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдХреИрд╕реЗ рд╣реИ
рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рддреЛ рдирд╣реАрдВ, рдорд╛рдЗрдХреНрд░реЛрд╕реЙрдлреНрдЯ
рд╕рдВрдХрд▓рдХ рдХреЛ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рддрд╛рдХрд┐ рдЖрдк рдмрд┐рдирд╛ рдХрд┐рд╕реА рдЙрдкрдирд╛рдо рдХреЗ рдЙрдкрдирд╛рдо рдЪрд┐рдкрдХрд╛ рд╕рдХреЗрдВ
рдкрд░реНрдпрд╛рд╡рд░рдг рдЬреЛ рдЗрд╕рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ!

рдбреЗрди рдЯрд┐рд╕ 15 рдЬрдирд╡рд░реАред 2019 kl 04:41 Skrev Fabio Spampinato <
рд╕реВрдЪрдирд╛рдПрдВ@github.com>:

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

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

рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ рдЯреАрдПрд╕ рдХреЛ рдПрдХ рдмрд╛рд╣рд░реА рдмрдВрдбрд▓рд░ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ рддрд╛рдХрд┐ рдЖрдЙрдЯрдкреБрдЯ рдХреЛрдб
рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рд╕рд╛рджрд╛ рд╣рд╛рд╕реНрдпрд╛рд╕реНрдкрдж рд╣реИред

-
рдЖрдк рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рдЗрд╕ рдИрдореЗрд▓ рдХрд╛ рд╕реАрдзреЗ рдЙрддреНрддрд░ рджреЗрдВ, рдЗрд╕реЗ GitHub рдкрд░ рджреЗрдЦреЗрдВ
https://github.com/Microsoft/TypeScript/issues/10866#issuecomment-454256799 ,
рдпрд╛ рдереНрд░реЗрдб рдХреЛ рдореНрдпреВрдЯ рдХрд░реЗрдВ
https://github.com/notifications/unsubscribe-auth/AAAy_zuWKV0qzzWt6_jZNgDLFt1TA0tMks5vDU3vgaJpZM4J6vZQ
.

рд╡реЗ рд╡рд╣рд╛рдВ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рд▓реЛрдбрд░ рдкрде рдорд╛рдирдЪрд┐рддреНрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдпрд╣ рд╕рдорд░реНрдерд┐рдд рд╣реИ!
рдФрд░ рдЬрдм рд╕реЗ рдЖрдк (рдореЗрд░реА рддрд░рд╣) рдЙрдиреНрд╣реЗрдВ рд▓реЛрдбрд░ рдХреЗ рдмрд┐рдирд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдкрд░ рдЬреЛрд░ рджреЗрддреЗ рд╣реИрдВ, рддреЛ рдХреНрдпрд╛ рд╣реИ
рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ
рдПрдХ рдЙрдкрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рддрд╛рдХрд┐ рдЖрдк рд╕реБрд╡рд┐рдзрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХреЗрдВ?

рдбреЗрди рдЯрд┐рд╕ 15 рдЬрдирд╡рд░реАред 2019 kl 05:10 skrev рд░реЙрдмрд░реНрдЯ рдореБрдЦреНрдп рд╕реВрдЪрдирд╛рдПрдВ @github.com:

рдФрд░ рдпрд╣ рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп рдХреЛрдб рдЙрддреНрдкрдиреНрди рдХрд░ рд░рд╣рд╛ рд╣реИ рдпрджрд┐ рдЖрдк рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ рдЬреЛ рд╣реИ
рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЗрдВрдЬрди рджреНрд╡рд╛рд░рд╛ рдЕрд╕рдорд░реНрдерд┐рдд,

рдореИрдВ рд╣рдореЗрд╢рд╛ рд╕рдордЭрддрд╛ рд╣реВрдВ рдХрд┐ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдерд╛
рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯред рдпрджрд┐ рдЖрдк рдореБрдЭреЗ рдмрддрд╛ рд░рд╣реЗ рд╣реИрдВ рдХрд┐ рдХреБрдЫ рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ рд╕рдорд░реНрдерд┐рдд рдирд╣реАрдВ рд╣реИрдВ
рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЗрдВрдЬрди рддреЛ рд╡реЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╡рд╣рд╛рдВ рдХреНрдпреЛрдВ рд╣реИрдВ?

рдпрджрд┐ рдЖрдкрдХрд╛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдбрд╛рдпрдиреЗрдорд┐рдХ рд▓рд┐рдВрдХ рд╣реИ рддреЛ рдХреНрдпрд╛ рдЖрдк C++ рдХрдВрдкрд╛рдЗрд▓рд░ рдХреЛ рджреЛрд╖ рджреЗрдВрдЧреЗ?
рдкреБрд╕реНрддрдХрд╛рд▓рдп рдФрд░ рдпрд╣ рдХрд┐ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдорд╢реАрди рдкрд░ рдирд╣реАрдВ рдЪрд▓реЗрдЧрд╛, рдЗрдирдореЗрдВ рдпреЗ рдирд╣реАрдВ рд╣реИрдВ
рд╕реНрдерд╛рдкрд┐рдд?

рдирд╣реАрдВ, рд▓реЗрдХрд┐рди рдореИрдВ рдЗрд╕реЗ рджреЛрд╖ рджреВрдВрдЧрд╛ рдЕрдЧрд░ рдпрд╣ рдореБрдЭреЗ рдЕрдиреНрдп рд╕реА ++ рдХреЛрдб рд╕реЗ рд▓рд┐рдВрдХ рдХрд░рдиреЗ рджреЗрддрд╛ рд╣реИ рдЬреЛ рдирд╣реАрдВ рдерд╛
рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХреЛрдИ рд╕рдВрдХрд▓рдХ рддреНрд░реБрдЯрд┐ рдпрд╛ рдЪреЗрддрд╛рд╡рдиреА рдХреЗ рд╕рд╛рде рдореМрдЬреВрдж рдирд╣реАрдВ рд╣реИред

-
рдЖрдк рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рдЗрд╕ рдИрдореЗрд▓ рдХрд╛ рд╕реАрдзреЗ рдЙрддреНрддрд░ рджреЗрдВ, рдЗрд╕реЗ GitHub рдкрд░ рджреЗрдЦреЗрдВ
https://github.com/Microsoft/TypeScript/issues/10866#issuecomment-454260977 ,
рдпрд╛ рдереНрд░реЗрдб рдХреЛ рдореНрдпреВрдЯ рдХрд░реЗрдВ
https://github.com/notifications/unsubscribe-auth/AAAy_25-ZmS235i1Ic7mvSzEt2QJDX6Bks5vDVTAgaJpZM4J6vZQ
.

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

рдХреГрдкрдпрд╛ рдореБрдЭреЗ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рдХреЗ рдЙрд╕ рдЕрдиреБрднрд╛рдЧ рдХреА рдУрд░ рдЗрдВрдЧрд┐рдд рдХрд░реЗрдВред

рдЯрд┐рд╕ 15 рдЬрдирд╡рд░реАред 2019 рдХреЗрдПрд▓ред 05:31 skrev рд░реЙрдмрд░реНрдЯ рдореБрдЦреНрдп рд╕реВрдЪрдирд╛рдПрдБ @github.com :

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

-
рдЖрдк рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рдЗрд╕ рдИрдореЗрд▓ рдХрд╛ рд╕реАрдзреЗ рдЙрддреНрддрд░ рджреЗрдВ, рдЗрд╕реЗ GitHub рдкрд░ рджреЗрдЦреЗрдВ
https://github.com/Microsoft/TypeScript/issues/10866#issuecomment-454263854 ,
рдпрд╛ рдереНрд░реЗрдб рдХреЛ рдореНрдпреВрдЯ рдХрд░реЗрдВ
https://github.com/notifications/unsubscribe-auth/AAAy_8e5v8IV-ynmjRTeoC3cp5llwnsIks5vDVm8gaJpZM4J6vZQ
.

рдпрд╣ рдлреАрдЪрд░ рд▓реЛрдбрд░реНрд╕ рдХреЛ рд╕рдкреЛрд░реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ рд╣реИ
рджреВрд╕рд░реА рддрд░рдл, рдкрдврд╝реЗрдВ
рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рдореЗрдВ рдкрде рдорд╛рдирдЪрд┐рддреНрд░рдг рдкрд░, рдлрд┐рд░ рд╕реЗ, рдЖрдк рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ
рдЧрд▓рдд!

https://austinknight.com/wp-content/uploads/2015/04/DesignVSUX.jpeg

@duffman рдХреНрдпрд╛ рдЖрдк рдирд╣реАрдВ рджреЗрдЦ рд╕рдХрддреЗ рдХрд┐ рдпрд╣рд╛рдБ рдХреЗ рд▓реЛрдЧ рдмрд╕ рдпрд╣реА рд╕реБрд╡рд┐рдзрд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ ??? рдЖрдк рд╕рднреА рдХреЛ рдмрддрд╛ рд░рд╣реЗ рд╣реИрдВ рдХрд┐ рд╡рд╣ рдпрд╣ рд╕рдордЭрдиреЗ рдХреЗ рд▓рд┐рдП рдореВрд░реНрдЦ рд╣реИ рдХрд┐ рдЗрд╕ "рд╕реБрд╡рд┐рдзрд╛" рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреИрд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдареАрдХ рд╣реИ - рдЖрдк рдЗрд╕реЗ рдЗрд╕ рддрд░рд╣ рд╕реЗ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рд▓реЗрдХрд┐рди рдХреМрди рдЬрд╛рдирддрд╛ рд╣реИ - рд╢рд╛рдпрдж рдпрд╣ рджреВрд╕рд░реА рддрд░рдл рд╣реИ ...

рд╡реИрд╕реЗ, рдореЗрд░реА рд░рд╛рдп рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╣реИ:

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

рдореИрдВ рдЗрд╕рдХреЗ рджреЛ рд╕рдорд╛рдзрд╛рдиреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХреА рдЕрдкреЗрдХреНрд╖рд╛ рдХрд░реВрдВрдЧрд╛:
1) рдЙрдкрдирд╛рдореЛрдВ рдХреЗ рд╕рд╛рде рдЖрдпрд╛рдд рдХреЛ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░рдирд╛
2) рдЪреЗрддрд╛рд╡рдиреА рджрд┐рдЦрд╛ рд░рд╣рд╛ рд╣реИ

"рдпрд╣ рд╕рд╣реА рд╡реНрдпрд╡рд╣рд╛рд░ рд╣реИ" рдХрд╣рдирд╛, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ, рдЧрд▓рдд рд╣реИред рдпрд╣ред рдЯреАрдПрд╕ рдЕрд╕реЗрдВрдмрд▓реА рднрд╛рд╖рд╛ рдирд╣реАрдВ рд╣реИ, рд╕реА/рд╕реА ++ рднреА рдирд╣реАрдВред

рд╡рд┐рдХрд╛рд╕ рджрд▓ рдХреЛ рдЙрдкрдирд╛рдо рд╕рдорд╛рдзрд╛рди рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рдЬреЛрдбрд╝рдирд╛ рдЪрд╛рд╣рд┐рдПред рдореЗрд░рд╛ рд╕реБрдЭрд╛рд╡ рд╣реИ рдХрд┐ рдПрдХ рдЬреЛрдбрд╝реЗрдВ
tsconfig рдореЗрдВ рд╕рдВрдХрд▓рдХ рд╕рдВрдХрд▓реНрдк рдХреЗ рд▓рд┐рдП рдХреБрдВрдЬреАред

рдпрд╣ рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ рдорд╛рдЗрдХреНрд░реЛрд╕реЙрдлреНрдЯ !!!!!!

рд╣рдо рдЖрдкрд╕реЗ рд╡рд┐рдирддреА рдХрд░рддреЗ рд╣реИрдВ, рдЙрдкрдирд╛рдо рдХреЗ рд╕рд╛рде рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЛ рдмреЗрд╣рддрд░ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдореЗрдВ рдЖрдкрдХреА рд╕рд╣рд╛рдпрддрд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

:( рдпрд╣рд╛рдБ рд╣рд░ рдХреЛрдИ рджреБрдЦреА рдФрд░ рдЧреБрд╕реНрд╕реЗ рдореЗрдВ рд╣реИ (рдФрд░ рднреВрдЦрд╛ рд╣реИ) рдХреЗ рдЕрдВрддрд░рд╛рд▓ рдХреЗ рдХрд╛рд░рдг
рд╕рдВрдЧрддрддрд╛ред рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрдорд╛рд▓ рд╣реИ, рдореБрдЭреЗ рдпрд╣ рдкрд╕рдВрдж рд╣реИ ...

рд╣рдореЗрдВ рдмрд╣реБрдд рдкрд╕рдВрдж рд╣реИ!

рдПрдХ рдмреЗрдШрд░ рдбреЗрд╡рд▓рдкрд░ рдХрд╛ рд╕рд╛рджрд░...

рдПрд▓ рдорд╛рд░ред, 15 рдбреЗ рдПрдиред рдбреЗ 2019 08:02, рдорд╛рдЗрдХ рдПрд╕. рдиреЛрдЯрд┐рдлрд┐рдХреЗрд╢рди @github.com
рд╡рд┐рд╡рд░рдг:

рд╡реИрд╕реЗ, рдореЗрд░реА рд░рд╛рдп рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╣реИ:

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

рдореИрдВ рдЗрд╕рдХреЗ рджреЛ рд╕рдорд╛рдзрд╛рдиреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХреА рдЕрдкреЗрдХреНрд╖рд╛ рдХрд░реВрдВрдЧрд╛:

  1. рдЙрдкрдирд╛рдореЛрдВ рдХреЗ рд╕рд╛рде рдЖрдпрд╛рддреЛрдВ рдХреЛ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░рдирд╛
  2. рдЪреЗрддрд╛рд╡рдиреА рджрд┐рдЦрд╛ рд░рд╣рд╛ рд╣реИ

"рдпрд╣ рд╕рд╣реА рд╡реНрдпрд╡рд╣рд╛рд░ рд╣реИ" рдХрд╣рдирд╛, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ, рдЧрд▓рдд рд╣реИред рдпрд╣ред рдЯреАрдПрд╕ рдирд╣реАрдВ рд╣реИ
рдЕрд╕реЗрдВрдмрд▓реА рднрд╛рд╖рд╛, рд╕реА/рд╕реА ++ рднреА рдирд╣реАрдВред

-
рдЖрдк рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рдЗрд╕ рдИрдореЗрд▓ рдХрд╛ рд╕реАрдзреЗ рдЙрддреНрддрд░ рджреЗрдВ, рдЗрд╕реЗ GitHub рдкрд░ рджреЗрдЦреЗрдВ
https://github.com/Microsoft/TypeScript/issues/10866#issuecomment-454384357 ,
рдпрд╛ рдереНрд░реЗрдб рдХреЛ рдореНрдпреВрдЯ рдХрд░реЗрдВ
https://github.com/notifications/unsubscribe-auth/ACKT9OqexgOaHH1vDFuRcO7U_r2DEC23ks5vDdFbgaJpZM4J6vZQ
.

. рдЯреАрдПрд╕ рдЕрд╕реЗрдВрдмрд▓реА рднрд╛рд╖рд╛ рдирд╣реАрдВ рд╣реИ, рд╕реА/рд╕реА ++ рднреА рдирд╣реАрдВред

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

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

рдореБрдЭреЗ рдпрд╣ рд╕рдордЭрдиреЗ рдореЗрдВ рдХрдард┐рдирд╛рдИ рд╣реЛ рд░рд╣реА рд╣реИ рдХрд┐ рдЖрдк рдЗрд╕реЗ рдХреНрдпреЛрдВ рд░рдЦрддреЗ рд╣реИрдВ, рд╕рдВрдХрд▓рдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдЬреИрд╕рд╛ рдХрд┐ рдЗрд╕реЗ рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП, рдлрд┐рд░ рд╕реЗ, рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реЛрдВ рдХреЛ рдкрдврд╝реЗрдВ рдЬреЛ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдмрддрд╛рддрд╛ рд╣реИ рдХрд┐ рд╕реБрд╡рд┐рдзрд╛ рдХреНрдпрд╛ рд╣реИ!

рдореЗрд░рд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдпрджрд┐ рдЖрдк рд╡реЗрдмрдкреИрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рдкрде рдЙрдкрдирд╛рдореЛрдВ рдХреЗ рд╕рд╛рде рдПрдХ рдХрд╛рд░реНрдпрд╢реАрд▓ рдЯреАрдПрд╕ рд╡рд┐рдХрд╛рд╕ рд╡рд╛рддрд╛рд╡рд░рдг рд╕реНрдерд╛рдкрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдпрджрд┐ рдЖрдк рд╡реЗрдмрдкреИрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдЖрдк 1 рд╕реЗрдХрдВрдб рдореЗрдВ рд╕рднреА рдЬреЗрдПрд╕ рдлрд╛рдЗрд▓реЛрдВ рдореЗрдВ рд╕рднреА рдкрдереЛрдВ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЯреАрдПрд╕рдкреАрдПрде рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЗрд╕реЗ рдкреИрдХреЗрдЬ рдореЗрдВ рдЬреЛрдбрд╝реЗрдВ .json рдПрдХ рд░рди рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рдФрд░ рдЖрдкрдХреЛ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪрдиреЗ рдХреА рдЬрд╝рд░реВрд░рдд рдирд╣реАрдВ рд╣реИ, рд╕рдорд╕реНрдпрд╛ рдореМрдЬреВрдж рдирд╣реАрдВ рд╣реИ, рдХрдВрдкрд╛рдЗрд▓рд░ рд╡реИрд╕реЗ рд╣реА рд░рд╣рддрд╛ рд╣реИ рдЬреИрд╕реЗ рдЗрд╕реЗ рдХрд╛рдо рдХрд░рдирд╛ рдерд╛ рдФрд░ рдЖрдк рдЦреБрд╢ рд╣реБрд░реНрд░реЗ рдХреЛ рдЖрдЧреЗ рдмрдврд╝рд╛ рд╕рдХрддреЗ рд╣реИрдВ !?

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

рд╢реАрд░реНрд╖ рдкрд╛рдВрдЪ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдпреЛрдЧрджрд╛рдирдХрд░реНрддрд╛рдУрдВ рдХреЛ рдмреБрд▓рд╛рдирд╛: @ahejlsberg @andy-ms @DanielRosenwasser @sandersn @sheetalkamat

рдХреНрдпрд╛ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЯреАрдо рдЗрд╕ рдореБрджреНрджреЗ рдкрд░ рдкреБрдирд░реНрд╡рд┐рдЪрд╛рд░ рдХрд░ рд╕рдХрддреА рд╣реИ? рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдзрд╛рдЧрд╛ рджреЛрдиреЛрдВ рджреГрд╖реНрдЯрд┐рдХреЛрдгреЛрдВ рдкрд░ рдХреБрдЫ рдЙрдкрдпреЛрдЧреА рдЪрд░реНрдЪрд╛ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЗрд╕рдХреА рд╣рд╛рд▓рд┐рдпрд╛ рд▓реЛрдХрдкреНрд░рд┐рдпрддрд╛ рдХреЛ рджреЗрдЦрддреЗ рд╣реБрдП рдФрд░ рдЬрд┐рддрдирд╛ рд╕рдордп рдмреАрдд рдЪреБрдХрд╛ рд╣реИ рдЙрд╕реЗ рдлрд┐рд░ рд╕реЗ рджреЗрдЦрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдЗрд╕ рдореБрджреНрджреЗ рдХреА рд╕реНрдерд┐рддрд┐ рдиреЗ рдореЗрд░реЗ рдкрд╛рд╕ рдЯреАрдПрд╕ рдХреЛ рдХреЗрд╡рд▓ рдЪреЗрдХрд░ рдбреНрдпреВрдЯреА рдЯрд╛рдЗрдк рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрджрд╛рд╡рдирдд рдХрд░рдиреЗ рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдХреЛрдИ рдЕрдиреНрдп рд╡рд┐рдХрд▓реНрдк рдирд╣реАрдВ рдЫреЛрдбрд╝рд╛ред
рдмреИрдмреЗрд▓ рдХреЗ рдкрд╛рд╕ рдЕрдм TS рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрдЪреНрдЫрд╛ рд╕рдорд░реНрдерди рд╣реИ рдФрд░ рд╕рд╛рде рдореЗрдВ babel-plugin-module-resolver рдЗрд╕ рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЗ рдХреЗ рд▓рд┐рдП рдХрд╛рд░реНрдп рдХреЛрдб рдЙрддреНрд╕рд░реНрдЬрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдХрд╛рдо рдареАрдХ рд╣реИред
рдХреЗрд╡рд▓ рдирдХрд╛рд░рд╛рддреНрдордХ рдкрдХреНрд╖ tsconfig.json рд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЗ рдмрд┐рдЯреНрд╕ рдХреЛ рдбреБрдкреНрд▓рд┐рдХреЗрдЯ рдХрд░ рд░рд╣рд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдмреИрдмреЗрд▓ рдЯреАрдПрд╕ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреА рдкрд░рд╡рд╛рд╣ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдпрд╣ рдиреЛрдб рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВ рдкреВрд░реНрдг рдкрде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕реНрд╡реАрдХрд╛рд░реНрдп рдореВрд▓реНрдп рд╣реИ рдФрд░ рдПрдХ рдмреЛрдирд╕ рдХреЗ рд░реВрдк рдореЗрдВ рдореБрдЭреЗ рдмреЗрдмреЗрд▓ рдореИрдХреНрд░реЛрдЬрд╝ рдЬреИрд╕реА рд╢рд╛рдирджрд╛рд░ рдЪреАрдЬреЛрдВ рдХреЗ рд╕рд╛рде рдкреВрд░рд╛ рдкрд╛рд░рд┐рд╕реНрдерд┐рддрд┐рдХреА рддрдВрддреНрд░ рдорд┐рд▓рддрд╛ рд╣реИред

рдпрд╣ рдиреНрдпреВрдирддрдо рд╕реЗрдЯрдЕрдк рд╣реИ рдЬреЛ рдореБрдЭреЗ tsc рдХрдВрдкрд╛рдЗрд▓рд░ рдХреЗ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рдореЗрдВ рдПрдХ рдмреВрдВрдж рдХреЗ рд░реВрдк рдореЗрдВ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИ:

  • npm install --save-dev @babel/cli @babel/core @babel/preset-env @babel/preset-typescript babel-plugin-module-resolver @babel/plugin-proposal-class-properties @babel/plugin-proposal-object-rest-spread
  • package.json рдореЗрдВ:
    tsc -> tsc && babel ./src --out-dir ./dist --extensions ".ts,.js"
  • tsconfig.json рдореЗрдВ:
{
  "compilerOptions": {
    "baseUrl": ".",
    "paths": {
      "@mynamespace/*": ["src/*"]
    },
    "outDir": "./dist",
    "noEmit": true, <--
    "allowJs": true,
    "target": "ES2017",
    "module": "CommonJS",
    "lib": [
      "ES2017"
    ]
  },
  "include": [
    "./src/**/*"
  ]
}

  • .babelrc рдореЗрдВ:
{
  "presets": [
    "@babel/preset-typescript",
    ["@babel/preset-env", {
      "targets": {
        "node": true
      }
    }]
  ],
  "plugins": [
    ["module-resolver", {
      "root": ["./src"],
      "alias": {
        "@mynamespace": "./src"
      },
      "extensions": [".js", ".ts"]
    }],
    "@babel/plugin-proposal-class-properties",
    "@babel/plugin-proposal-object-rest-spread"   
  ]
}

рдореИрдВ рд╕рд┐рд░реНрдл рдкреВрд░реНрдг рдкрде рдХреЗ рд╕рд╛рде рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореБрдЭреЗ рд╡реЗрдмрдкреИрдХ рдпрд╛ рдмреЗрдмреЗрд▓ рдпрд╛ рдХреБрдЫ рдФрд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдирд╛ рд╣реИ, рдЗрд╕ рд╕рд░рд▓ рд╕реБрд╡рд┐рдзрд╛ рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдмрд╣реБрдд рдХрдард┐рди рд╣реИ, рдпрд╣ рдЖрд╕рд╛рди рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП

рдореИрдВ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рддрд╛ рд╣реВрдВ, рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдореБрдЭреЗ рдЗрд╕ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрддрд╛ рд╣реИ
рдореЗрд░реЗ рдЕрдкрдиреЗ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд╕реЗрдЯрдЕрдк рдХреЗ рдХрд╛рд░рдг рд╕рдорд╕реНрдпрд╛, рдпрд╛ рд╢рд╛рдпрдж рдореИрдВ рдерд╛ :) рдпрд╣ рдПрдХ рд╕реБрдкрд░ рдирд╣реАрдВ рд╣реИ
рд╣реИрд╡реА рдлрд┐рдХреНрд╕, рдлрд┐рдХреНрд╕ рдмрд╕ (рдЖрдБрдЦ рдмрдВрдж рдХрд░рдХреЗ) рдбрд┐рд╕реНрдЯрдкрд╛рде рдкрд░ рднрд░реЛрд╕рд╛ рдХрд░рдирд╛ рд╣реЛрдЧрд╛,
рдЬреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╡рд░реНрддрдорд╛рди рд╕рдорд╛рдзрд╛рди рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдХрдо рдФрд░ рдЕрдзрд┐рдХ рд╕рд░рд▓ рдХреЛрдб рд╣реИ, I┬┤ll
рдХрд▓ рддрдХ рдПрдХ рдлрд┐рдХреНрд╕ рдЙрдкрд▓рдмреНрдз рдХрд░рд╛рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВ ...

рдбреЗрди рдореЛрди 28 рдЬрдирд╡рд░реАред 2019 kl 15:59 skrev [email protected] :

рдореИрдВ рд╕рд┐рд░реНрдл рдкреВрд░реНрдг рдкрде рдХреЗ рд╕рд╛рде рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореБрдЭреЗ рдХрд░рдирд╛ рд╣реИ
рд╡реЗрдмрдкреИрдХ рдпрд╛ рдмреЗрдмреЗрд▓ рдпрд╛ рдХреБрдЫ рдФрд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВ, рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдмрд╣реБрдд рдХрдард┐рди рд╣реИ !!!

-
рдЖрдк рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рдЗрд╕ рдИрдореЗрд▓ рдХрд╛ рд╕реАрдзреЗ рдЙрддреНрддрд░ рджреЗрдВ, рдЗрд╕реЗ GitHub рдкрд░ рджреЗрдЦреЗрдВ
https://github.com/Microsoft/TypeScript/issues/10866#issuecomment-458164055 ,
рдпрд╛ рдереНрд░реЗрдб рдХреЛ рдореНрдпреВрдЯ рдХрд░реЗрдВ
https://github.com/notifications/unsubscribe-auth/AAAy_1_T-An7swSND-xdBhL0HNHxQkm6ks5vHxBggaJpZM4J6vZQ
.

рдЗрд╕реЗ рдпрд╣рд╛рдВ рдЫреЛрдбрд╝ рд░рд╣реЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ paths рдХреЗ рд╡рд░реНрддрдорд╛рди рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЗ рд▓рд┐рдП рдПрдХ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рджрд╕реНрддрд╛рд╡реЗрдЬ рдЙрдкрдпреЛрдЧ рдорд╛рдорд▓реЗ рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдЗрд╕ рдзрд╛рдЧреЗ рдореЗрдВ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛: @types/ рдкреИрдХреЗрдЬ рд╕реЗрд╡рд░ рдХреЗ рд╕рдВрдмрдВрдз рдореЗрдВ рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреЛ рдмреИрдХрдкреЛрд░реНрдЯ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВред рд╣рд╛рд▓рд╛рдВрдХрд┐ рд╡реЗ рдкреБрд░рд╛рдиреЗ рдПрдкреАрдЖрдИ рдХреЗ рд▓рд┐рдП рдЕрджреНрдпрддрди рдкреНрд░рдХрд╛рд░ рд╢рд╛рдорд┐рд▓ рдХрд░рддреЗ рд╣реИрдВ рдЬрд┐рдирдХрд╛ рдореИрдВ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдореИрдВ history@2 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдЬрдм history@3 рдирд╡реАрдирддрдо рд╣реИред

"paths": {
    "history": [ "history/v2" ]
}

рдХрдВрдкрд╛рдЗрд▓рд░ рдХреЛ рдкреНрд░рдХрд╛рд░ рдХреЗ рдЙрдкрдирд╛рдореЛрдВ рдФрд░ "рдХреЛрдб" рдЙрдкрдирд╛рдореЛрдВ рдХреЗ рдмреАрдЪ рдЕрдВрддрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрддрд┐рд░рд┐рдХреНрдд рд╡рд┐рдХрд▓реНрдк рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред рдпрджрд┐ рд╣рдо рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдкрде рдЙрдкрдирд╛рдореЛрдВ рдХреЛ рдЙрддреНрд╕рд░реНрдЬрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рдмрджрд▓рддреЗ рд╣реИрдВ рддреЛ рд╣рдореЗрдВ рд╕рд╣реА рдкреНрд░рдХрд╛рд░ рдХреЗ рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рдЦреЛрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдВрдХрд▓рдХ рдХреЛ рдХреНрд╖рдорддрд╛ рдЬреЛрдбрд╝рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рдпрд╣ рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЗ рдЦрд┐рд▓рд╛рдл рдХреЛрдИ рддрд░реНрдХ рдирд╣реАрдВ рд╣реИред рдореИрдВ рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рдЙрддреНрд╕рд░реНрдЬрд┐рдд рдЙрдкрдирд╛рдо рдФрд░ рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЗ рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд▓рд┐рдП рдмрд╕ тДв рдХрд╛рд░реНрдп рд╕рдорд╛рдзрд╛рди рдЪрд╛рд╣рддрд╛ рд╣реВрдВред рдмрд╕ рдХреБрдЫ рд╕рдВрджрд░реНрдн рдкреНрд░рджрд╛рди рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ рдХрд┐ рдЗрд╕реЗ рдмрджрд▓рдирд╛ рдЙрддрдирд╛ рдЫреЛрдЯрд╛ рдХреНрдпреЛрдВ рдирд╣реАрдВ рд╣реЛ рд╕рдХрддрд╛ рдЬрд┐рддрдирд╛ рд▓реЛрдЧ рд╕реЛрдЪрддреЗ рд╣реИрдВред

рдХрдВрдкрдиреА-рд╡реНрдпрд╛рдкреА TS рдХрд╛рд░реНрдпрд╢рд╛рд▓рд╛ рдХреЗ рджреМрд░рд╛рди рджреВрд╕рд░реА рдмрд╛рд░, рдореБрдЭреЗ рдЗрд╕ рдмреЗрд╣реВрджрд╛ рдФрд░ рд╢рд░реНрдордирд╛рдХ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреА рд╡реНрдпрд╛рдЦреНрдпрд╛ рдХрд░рдиреА рдкрдбрд╝реА рд╣реИ...

рдЧрдВрднреАрд░рддрд╛ рд╕реЗ!

рдХрд┐рд╕ рдкреНрд░рдХрд╛рд░ рдХрд╛ рднрд╛рд╖рд╛ рд╕рдВрдХрд▓рдХ, рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдЬрд┐рд╕рдХреА рдкреНрд░рд╛рдердорд┐рдХ рдмрд┐рдХреНрд░реА рдкрд┐рдЪ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд▓рд┐рдП рдЕрдзрд┐рдХ рд╢реБрджреНрдзрддрд╛ рд╣реИ, рдЯреВрдЯреЗ рд╣реБрдП рдХреЛрдб рдХреЛ "рдлреАрдЪрд░" рдХреЗ рд░реВрдк рдореЗрдВ рдЙрддреНрдкрдиреНрди рдХрд░рддрд╛ рд╣реИ?!?!

рдореБрдЭреЗ рдЦреЗрдж рд╣реИ рдХрд┐ рдореИрдВрдиреЗ рдЕрдкрдиреА рдЯрд┐рдкреНрдкрдгреА рдореЗрдВ рдЗрддрдирд╛ рдирд┐рд░рд╛рд╢ рдХрд┐рдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣рд╛рдБ рд╕рдореБрджрд╛рдп рдХреЗ рд╡рд┐рдЪрд╛рд░реЛрдВ рдХреЛ рдирдЬрд╝рд░рдЕрдВрджрд╛рдЬрд╝ рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ рдФрд░ рдмрд╛рд░-рдмрд╛рд░ рдиреАрдЪрд╛ рджрд┐рдЦрд╛рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИред

рдЬрд╝рд░рд╛ рджреЗрдЦреЗрдВ рдХрд┐ рдЗрд╕реЗ рдХрд┐рддрдиреА рдмрд╛рд░ рд╕рдВрджрд░реНрднрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ... рдХрд┐рддрдиреЗ рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдордп рдФрд░ рдзреНрдпрд╛рди рдХреА рдмрд░реНрдмрд╛рджреА рд╣реИред

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

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

рд╕рд┐рд░реНрдл рдЗрд╕рд▓рд┐рдП рдХрд┐ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рд▓рдЪреАрд▓реЗ рддрд░реАрдХреЛрдВ рд╕реЗ рдореЙрдбреНрдпреВрд▓ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ "рдЯреВрдЯреЗ рд╣реБрдП рдХреЛрдб" рдХрд╛ рдЙрддреНрд╕рд░реНрдЬрди рдХрд░рддрд╛ рд╣реИред рдЗрд╕ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЛ рдкреНрд░рддрд┐рдмрд┐рдВрдмрд┐рдд рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдХреБрдЫ рд▓реЛрдбрд░ рдФрд░ рдмрдВрдбрд▓рд░ рдареАрдХ рдХрд╛рдо рдХрд░реЗрдВрдЧреЗред

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

рдХреНрдпреЛрдВрдХрд┐ рдХреЛрдИ рд╡рд┐рд╢реЗрд╖ рдЙрдкрдХрд░рдг рдЖрдкрдХреЗ рдкрд╛рд╕ рдореМрдЬреВрдж рдХрд┐рд╕реА рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рдХрд╛ рд╣рдореЗрд╢рд╛ рдпрд╣ рдорддрд▓рдм рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЙрдкрдХрд░рдг рдХреА рдЧрд▓рддреА рд╣реИред рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдЕрдкрдиреА рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╕рднреА рдЙрдкрдХрд░рдг рди рд╣реЛрдВред

@kitsonk рдЖрдкрдиреЗ рдЕрднреА рдЬреЛ рдХреБрдЫ рдХрд╣рд╛ рд╣реИ рд╡рд╣ рдирд┐рд╢рд╛рди рд╕реЗ рджреВрд░ рд╣реИред

рдореБрджреНрджрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдЯреАрдПрд╕ рд╡рд┐рдХрд╛рд╕/рдкрд░реАрдХреНрд╖рдг рдХреЗ рджреМрд░рд╛рди рдПрдХ рддрд░рд╣ рд╕реЗ рдХрд╛рдо рдХрд░реЗрдЧрд╛, рдФрд░ рджреВрд╕рд░рд╛ рд╕рдВрдХрд▓рди рдкреВрд░рд╛ рд╣реЛрдиреЗ рдХреЗ рдмрд╛рджред

рдпрджрд┐ TS рдПрдХ рдореЙрдбреНрдпреВрд▓ рд░рд┐рдЬрд╝реЙрд▓реНрд╡рд░ рдмрдирдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реИ, рддреЛ рдЙрд╕реЗ рдПрдХ рдкреИрдЯрд░реНрди рдЪреБрдирдиреЗ рдФрд░ рдЙрд╕ рдкрд░ рдЯрд┐рдХреЗ рд░рд╣рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдЕрдЧрд░ рдореИрдВ ts-node рдХреЗ рд╕рд╛рде рдХреБрдЫ рдЪрд▓рд╛рддрд╛ рд╣реВрдВ рддреЛ рдЗрд╕реЗ рдареАрдХ рдЙрд╕реА рддрд░рд╣ рд╕рдВрдЪрд╛рд▓рд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдЬреИрд╕реЗ рдореИрдВрдиреЗ рдХреБрдЫ рдЯреАрдПрд╕ рд╕рдВрдХрд▓рд┐рдд рдХрд┐рдпрд╛ рдФрд░ рдЗрд╕реЗ node рдХреЗ рд╕рд╛рде рдЪрд▓рд╛рдпрд╛ред

рдРрд╕рд╛ рдирд╣реАрдВ рд╣реИ, рдФрд░ рдпрд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реИред

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

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

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

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

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

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

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

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

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