рдирдорд╕реНрддреЗ, рдореИрдВ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд╕рд╛рде рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рдореИрдВрдиреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд▓реЙрдиреНрдЪ рдХрд░рдиреЗ рдХреЗ рдкреНрд░рдпрд╛рд╕ рдореЗрдВ ( react
, react-dom
), ( @types/react
, @types/react-dom
) рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ред рдореБрдЭреЗ рддреНрд░реБрдЯрд┐ рдорд┐рд▓рддреА рд╣реИ ERROR in [at-loader] ./node_modules/@types/react/index.d.ts:55:22
Cannot find module 'csstype'
ред рдореИрдВрдиреЗ npm i csstype
рдореЗрдВ @types/react
рдФрд░ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреА рдЬрдбрд╝ рдореЗрдВ рдХреЛрд╢рд┐рд╢ рдХреАред рддреНрд░реБрдЯрд┐ рдХреЗ рдмрд╛рд╡рдЬреВрдж, рдореЙрдбреНрдпреВрд▓ @types/react
рдлрд╝реЛрд▓реНрдбрд░ рдиреЛрдб_рдореЙрдбреНрдпреВрд▓/рд╕реАрдПрд╕рдПрд╕рдЯрд╛рдЗрдк рдореМрдЬреВрдж рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рдпрд╣ рднреА рдирд╣реАрдВ рдкрддрд╛ рдХрд┐ рдпрд╣ рддреНрд░реБрдЯрд┐ рдХреНрдпреЛрдВ рд╣реЛрддреА рд╣реИред
tsconfig.json
{
"compilerOptions": {
"outDir": "./build/", // path to output directory
"strictNullChecks": true, // enable strict null checks as a best practice
"module": "es6", // specify module code generation
"jsx": "react", // use typescript to transpile jsx to js
"target": "es5", // specify ECMAScript target version
"allowJs": true, // allow a partial TypeScript and JavaScript codebase
"noImplicitAny": true,
"noImplicitReturns": true,
"noUnusedLocals": true,
"noUnusedParameters": true,
},
"exclude": [
"node_modules"
],
"include": [
"./source/**/*.tsx",
"./source/**/*.ts"
]
}
рдкреИрдХреЗрдЬ.рдЬреЗрд╕рди
{
"name": "suggestion-app",
"version": "1.0.0",
"main": "index.js",
"license": "MIT",
"scripts": {
"webpack:server": "babel-node node_modules/.bin/webpack-dev-server --mode=development"
},
"dependencies": {
"react": "^16.3.1",
"react-dom": "^16.3.1"
},
"devDependencies": {
"@types/react": "^16.3.5",
"@types/react-dom": "^16.0.4",
"babel-cli": "^6.26.0",
"babel-preset-env": "^1.6.1",
"babel-preset-stage-3": "^6.24.1",
"caniuse-lite": "^1.0.30000697",
"clean-webpack-plugin": "^0.1.19",
"css-loader": "^0.28.11",
"eslint": "^4.19.1",
"eslint-config-airbnb": "^16.1.0",
"eslint-plugin-import": "^2.10.0",
"eslint-plugin-jsx-a11y": "^6.0.3",
"eslint-plugin-react": "^7.7.0",
"file-loader": "^1.1.11",
"glob": "^7.1.2",
"html-webpack-plugin": "^3.2.0",
"mini-css-extract-plugin": "^0.4.0",
"postcss-cssnext": "^3.1.0",
"postcss-loader": "^2.1.3",
"purify-css": "^1.2.5",
"purifycss-webpack": "^0.7.0",
"script-ext-html-webpack-plugin": "^2.0.1",
"webpack": "^4.5.0",
"webpack-cli": "^2.0.14",
"webpack-dev-server": "^3.1.1"
}
}
рд╕реНрд░реЛрдд/рд╕реВрдЪрдХрд╛рдВрдХ.ts
import * as React from 'react';
import * as ReactDOM from 'react-dom';
import './styles/main.css';
ReactDOM.render(
<h1>Hello, world!</h1>,
document.getElementById('root')
);
рдУрдПрд╕: рдЙрдмрдВрдЯреВ 17.10
рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдВ compilerOptions.moduleResolution: "node"
(рдУрд░реНрдЯрд╛ рджреНрд╡рд╛рд░рд╛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ: рдпрджрд┐ рдЖрдк рдЗрд╕реЗ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЯрд╛рдЗрдк рдХрд┐рдП рдЧрдП рдХреЗ рдЕрдВрджрд░ рджреЗрдЦ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рдирд┐рд░реНрднрд░рддрд╛ рдореЗрдВ npm install
рдЪрд▓рд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдЬрд╣рд╛рдВ рдЖрдк рдЙрд╕ рддреНрд░реБрдЯрд┐ рдХреЛ рджреЗрдЦ рд░рд╣реЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП cd types/react; npm install
рдФрд░ рдлрд┐рд░ рд▓рд┐рд╕реНрдЯрд┐рдВрдЧ рдмреЗрд╣рддрд░ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП - https рджреЗрдЦреЗрдВ: //github.com/microsoft/dtslint/issues/226 )
рдореБрдЭреЗ рднреА рдпрд╣ рддреНрд░реБрдЯрд┐ рдереАред
moduleResolution: true
рдореБрдЭреЗ рддреНрд░реБрдЯрд┐рдпрд╛рдВ рджреЗрддрд╛ рд╣реИ - рдФрд░ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реЛрдВ рдореЗрдВ рдорд╛рдиреНрдп рдорд╛рди рдХреЗ рд░реВрдк рдореЗрдВ рд╕реВрдЪреАрдмрджреНрдз рдирд╣реАрдВ рд╣реИ - рд▓реЗрдХрд┐рди moduleResolution: "node"
рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕рдиреЗ рдХрд╛рдо рдХрд┐рдпрд╛ рд╣реИ рдзрдиреНрдпрд╡рд╛рдж!
рдХреНрд╖рдорд╛ рдХрд░реЗрдВ, рдореЗрд░рд╛ рдорддрд▓рдм рдерд╛ "node"
рдореЗрд░реА рдЯрд┐рдкреНрдкрдгреА рдмрджрд▓ рджреАред рдЦреБрд╢реА рд╣реИ рдХрд┐ рдЗрд╕рд╕реЗ рдорджрдж рдорд┐рд▓реАред
рд╕реЗрдЯ "moduleResolution": "node"
рдореЗрд░реЗ рд▓рд┐рдП рднреА рдЙрдкрдпреЛрдЧреА рд╣реИред
рдзрдиреНрдпрд╡рд╛рдж рдлреНрд░реЗрдирд┐рдХред рдореЗрд░реЗ рд▓рд┐рдП рднреА рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред
рдХреНрдпрд╛ рдХреЛрдИ рд░рдВрдЧ рдкреНрд░рджрд╛рди рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдХреНрдпреЛрдВ? рдХреНрдпрд╛ рдХреЛрдИ рдЕрдкрдбреЗрдЯ рд╣реИ рдЬреЛ рдЗрд╕реЗ рдЕрдирд╛рд╡рд╢реНрдпрдХ рдмрдирд╛ рджреЗрдЧрд╛?
рдпрджрд┐ compilerOptions.module === "AMD" or "System" or "ES6"
рдХреЗ рд▓рд┐рдП рдбрд┐рдлрд╝реЙрд▓реНрдЯ compilerOptions.moduleResolution
рд╣реЛрдЧрд╛ "Classic"
, рдЕрдиреНрдпрдерд╛ рдпрд╣ рд╣реИ "Node"
ред рдЗрд╕рд▓рд┐рдП рдпрджрд┐ рдЖрдк рдЗрдирдореЗрдВ рд╕реЗ рдХрд┐рд╕реА рдПрдХ рдореЙрдбреНрдпреВрд▓ рд░рдгрдиреАрддрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЖрдкрдХреЗ рд╕рднреА рдкреИрдХреЗрдЬ node_modules
рдЕрдВрддрд░реНрдЧрдд рд╣реИрдВред compilerOptions.moduleResolution
рдХреЛ "Node"
рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред
Classic
:
рдЧреИрд░-рд░рд┐рд╢реНрддреЗрджрд╛рд░ рдореЙрдбреНрдпреВрд▓ рдЖрдпрд╛рдд рдХреЗ рд▓рд┐рдП, рд╣рд╛рд▓рд╛рдВрдХрд┐, рдХрдВрдкрд╛рдЗрд▓рд░ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдЯреНрд░реА рдХреЛ рдЖрдпрд╛рдд рдлрд╝рд╛рдЗрд▓ рд╡рд╛рд▓реА рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рд╕реЗ рд╢реБрд░реВ рдХрд░рддрд╛ рд╣реИ, рдПрдХ рдорд┐рд▓рд╛рди рдкрд░рд┐рднрд╛рд╖рд╛ рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реИред
Node
:
рдиреЛрдб рдЖрдкрдХреЗ рдореЙрдбреНрдпреВрд▓ рдХреЛ рдиреЛрдб_рдореЙрдбреНрдпреВрд▓реНрд╕ рдирд╛рдордХ рд╡рд┐рд╢реЗрд╖ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдЦреЛрдЬреЗрдЧрд╛ред рдПрдХ рдиреЛрдб_рдореЙрдбреНрдпреВрд▓ рдлрд╝реЛрд▓реНрдбрд░ рд╡рд░реНрддрдорд╛рди рдлрд╝рд╛рдЗрд▓ рдХреЗ рд╕рдорд╛рди рд╕реНрддрд░ рдкрд░ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдпрд╛ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рд╢реНрд░реГрдВрдЦрд▓рд╛ рдореЗрдВ рдКрдкрд░ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдиреЛрдб рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рд╢реНрд░реГрдВрдЦрд▓рд╛ рддрдХ рдЪрд▓реЗрдЧрд╛, рдкреНрд░рддреНрдпреЗрдХ рдиреЛрдб_рдореЙрдбреНрдпреВрд▓ рдХреЛ рддрдм рддрдХ рджреЗрдЦреЗрдЧрд╛ рдЬрдм рддрдХ рдХрд┐ рд╡рд╣ рдЙрд╕ рдореЙрдбреНрдпреВрд▓ рдХреЛ рдирд╣реАрдВ рдвреВрдВрдв рд▓реЗрддрд╛ рдЬрд┐рд╕реЗ рдЖрдкрдиреЗ рд▓реЛрдб рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд┐рдпрд╛ рдерд╛ред
( рд╕реНрд░реЛрдд )
"module": "commonjs"
рдиреЗ рдореЗрд░реЗ рд▓рд┐рдП рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдареАрдХ рдХрд░ рджрд┐рдпрд╛, рдЗрд╕реЗ рдЖрдЬрдорд╛рдПрдВред
classic
рдореЙрдбреНрдпреВрд▓ рд░рд┐рдЬрд╝реЙрд▓реНрдпреВрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓реЛрдВ рдХреЗ рд▓рд┐рдП рдЬреЛ _don't_ node
рдореЙрдбреНрдпреВрд▓ рд░рд┐рдЬрд╝реЙрд▓реНрдпреВрд╢рди рдореЗрдВ рдмрджрд▓рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдореИрдВ csstype
рд▓рд┐рдП paths
рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рдЬреЛрдбрд╝рдХрд░ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдерд╛ред csstype
рдореЗрд░реЗ tsconfig.json
, рдХреНрдпреЛрдВрдХрд┐ рдореЗрд░рд╛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ baseUrl
рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд╡рд┐рдХрд▓реНрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реИред рдЕрдзрд┐рдХ рд╡рд┐рд╡рд░рдг рдХреЗ рд▓рд┐рдП рдмреЗрд╕рдпреВрдЖрд░рдПрд▓ рджрд╕реНрддрд╛рд╡реЗрдЬ рджреЗрдЦреЗрдВред
рдЬрд╛рд╣рд┐рд░ рд╣реИ, рдпрд╣ рдПрдХ рд╕реНрдХреЗрд▓реЗрдмрд▓ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдирд╣реАрдВ рд╣реИ рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдЗрд╕ рддрд░рд╣ рдХреЗ рдХрдИ рд╕рдВрдШрд░реНрд╖ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдпрд╣ рд╣рдорд╛рд░рд╛ рдкрд╣рд▓рд╛ рдерд╛ рдФрд░ рдЕрдЧрд░ рд╣рдо node
рдореЙрдбреНрдпреВрд▓ рд░рд┐рдЬрд╝реЙрд▓реНрдпреВрд╢рди рдкрд░ рд╕реНрд╡рд┐рдЪ рдХрд░рдиреЗ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рддреЛ рдХрдо рд╕реЗ рдХрдо рд╣рдореЗрдВ рдХреБрдЫ рд╕рдордп рдорд┐рд▓ рдЧрдпрд╛ рд╣реИред
рдореИрдВ рднреА рдЗрд╕рдореЗрдВ рднрд╛рдЧ рд░рд╣рд╛ рдерд╛ред
рд╡реЗрдмрдкреИрдХ + рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ
Module not found: Error: Can't resolve 'csstype'
рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдП рдХреНрдпрд╛ рддрдп рд╣реИ, рдЬреЛ рд╕рдВрднрд╡рддрдГ рдмрд╣реБрдд рд╣реИрдХреА рд╣реИ, рд▓реЗрдХрд┐рди рдЯреАрдПрд╕ 2.9 рдХреЗ рд░реВрдк рдореЗрдВ рдЖрдк import()
рдкреНрд░рдХрд╛рд░ (https://blogs.msdn.microsoft.com/typescript/2018/05/31/announcing-typescript) рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ -2-9/#import-types), рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ рдРрд╕рд╛ рдХрд┐рдпрд╛ рдФрд░ рдпрд╣ рдЕрдм рдмрд┐рдирд╛ рдХрд┐рд╕реА рд╢рд┐рдХрд╛рдпрдд рдХреЗ рд╕рдВрдХрд▓рд┐рдд рдХрд░рддрд╛ рд╣реИ:
type VisibilityProperty = import('csstype').VisibilityProperty;
type AnimationProperty = import('csstype').AnimationProperty;
рдирдорд╕реНрддреЗред рдпрд╣рд╛рдВ compilerOptions.moduleResolution: "node"
рд╕реЗрдЯ рдХрд░рдиреЗ рдХреЗ рд╕реБрдЭрд╛рд╡ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред
рд╣рд╛рд▓рд╛рдВрдХрд┐ рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рдЬрдм рдореИрдВрдиреЗ create-react-app-typescript рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдмрдирд╛рдпрд╛, рддреЛ рдореЙрдбреНрдпреВрд▓ рд╕рдорд╛рдзрд╛рди рдкрд╣рд▓реЗ рд╕реЗ рд╣реА "рдиреЛрдб" рдХреЗ рд░реВрдк рдореЗрдВ рд╕реЗрдЯ рд╣реИ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдЕрднреА рднреА рд╕рдорд╕реНрдпрд╛ рджрд┐рдЦрд╛рдИ рджреЗ рд░рд╣реА рд╣реИред
рдореИрдВ рдЬрд╛рдБрдЪ рдХрд░рддрд╛ рд░рд╣реВрдВрдЧрд╛ рд▓реЗрдХрд┐рди рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ рдЕрдЧрд░ рдХрд┐рд╕реА рдХреЛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЬрд╡рд╛рдм рдкрддрд╛ рд╣реЛ рдФрд░ рдореБрдЭреЗ рдмрддрд╛ рд╕рдХреЗ рдХрд┐ рдЗрд╕реЗ рдХреИрд╕реЗ рдареАрдХ рдХрд┐рдпрд╛ рдЬрд╛рдП :-)
рдЕрджреНрдпрддрди: рдорд╛рдл рдХрд░рдирд╛ рдпрд╣ рдореЗрд░рд╛ рдмреБрд░рд╛ рд╕реЗрдЯрд┐рдВрдЧ рд╣реИ - рд╡рд╣рд╛рдБ рд╣реИ рдПрдХ tsconfig.test.json
рдХреЗ рд░реВрдк рдореЗрдВ рдореЙрдбреНрдпреВрд▓ рд╕реЗрдЯ рд╣реИ рдХрд┐ commonjs
рдФрд░ рдЬреЛрдбрд╝рдиреЗ "moduleResolution": "node"
рдпрд╣ рддрдп рдХрд░ рджреА рд╣реИ рд▓рдЧрддрд╛ рд╣реИред
рдореИрдВ types/react-tag-autocomplete
рдЬрд╛рдВрдЪ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдФрд░ npm run lint react-tag-autocomplete
рдЪрд▓рд╛ рд░рд╣рд╛ рд╣реВрдВред рдПрдХ рд╣реА рддреНрд░реБрдЯрд┐ рд╣реЛ рд░рд╣реА рд╣реИ, error TS2307: Cannot find module 'csstype'
ред
"moduleResolution": "node",
рдХреЛ compilerOptions
рдореЗрдВ react-tag-complete
рдХреЗ tsconfig.json
рдЬреЛрдбрд╝рдиреЗ рдХреЗ рдмрд╛рдж, рдпрд╣ рддреНрд░реБрдЯрд┐ рджреЗрддрд╛ рд╣реИ: Error: Unexpected compiler option moduleResolution
ред
рдХреЛрдИ рдорджрдж?
рдЗрд╕рдиреЗ рдореБрдЭреЗ рдПрдХ рдкреНрд░рдХрд╛рд░ рдХреА рдкрд░рд┐рднрд╛рд╖рд╛ рд▓рд┐рдЦрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рдкрд╛рдЧрд▓ рдХрд░ рджрд┐рдпрд╛ рдЬреЛ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдкрд░ рдирд┐рд░реНрднрд░ рдерд╛ред рдпрд╣ рдкрддрд╛ рдЪрд▓рд╛ рд╣реИ рдХрд┐ csstype
рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреА рдЕрдкрдиреА TS рдкрд░рд┐рднрд╛рд╖рд╛рдПрдБ рд╣реИрдВ, рдЬреЛ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдЗрд╕ рд░реЗрдкреЛ рдХреА /types
рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рдореМрдЬреВрдж рдирд╣реАрдВ рд╣реИрдВред рдореИрдВрдиреЗ рдЗрд╕реЗ рд╕рдВрдмреЛрдзрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП dtslint рдореЗрдВ рдПрдХ рд╕рдорд╕реНрдпрд╛ рдмрдирд╛рдИ:
рдореЗрд░реЗ рд▓рд┐рдП, moduleResolution
рдкрд░рдо рдХреЛ рд╕реЗрдЯ рдХрд░рдиреЗ рд╕реЗ рдХрд╛рдо рдирд╣реАрдВ рдЪрд▓рд╛, рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдЙрд╕ рд╕рдорд╛рдзрд╛рди рдХрд╛ рдкреНрд░рджрд░реНрд╢рди рдХрд┐рдпрд╛ рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП @ рдорд╛рдЗрдХ-рдорд╛рд░реНрдХрд╛рдЪреА рдиреЗ рдкрд╣рд▓реЗ рд╣реА рдкреАрдЖрд░ рдореЗрдВ рд╕реБрдЭрд╛рдпрд╛ рдерд╛ рдЬрд┐рд╕реЗ
cd types/react
npm i
@ рд░рд╛рд╣реБрд▓-рд╕рд╛рдЧреЛрд░ рдореБрдЭреЗ рдЖрдкрдХреЗ рдЬреИрд╕реА рд╣реА рддреНрд░реБрдЯрд┐ рдорд┐рд▓ рд░рд╣реА рд╣реИред рдХреНрдпрд╛ рдЖрдкрдиреЗ рдХрднреА рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛рдпрд╛ рдХрд┐ рдЗрд╕реЗ рдХреИрд╕реЗ рд╣рд▓ рдХрд┐рдпрд╛ рдЬрд╛рдП?
@mcmar рдирд╣реАрдВред
@ рд░рд╛рд╣реБрд▓-рд╕рд╛рдЧреЛрд░ рдореБрдЭреЗ рдЖрдкрдХреЗ рдЬреИрд╕реА рд╣реА рддреНрд░реБрдЯрд┐ рдорд┐рд▓ рд░рд╣реА рд╣реИред рдХреНрдпрд╛ рдЖрдкрдиреЗ рдХрднреА рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛рдпрд╛ рдХрд┐ рдЗрд╕реЗ рдХреИрд╕реЗ рд╣рд▓ рдХрд┐рдпрд╛ рдЬрд╛рдП?
рдЖрдкрдХреЛ types/react
рдирд┐рд░реНрднрд░рддрд╛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреА рд╣реЛрдЧреА рдФрд░ рдпрд╣ рдХрд╛рдо рдХрд░реЗрдЧрд╛ :)
рдЬреИрд╕рд╛ рдХрд┐ рдЗрд╕ рдЙрддреНрддрд░ рдореЗрдВ рджрд░реНрд╢рд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ https://github.com/DefinitelyTyped/DefinitelyTyped/issues/24788#issuecomment -495861835
рдореЗрд░реЗ рдкрд╛рд╕ рднреА рдпрд╣ рдореБрджреНрджрд╛ рд╣реИред
"moduleResolution": "node",
рд╕реЗрдЯ рдХрд░рдиреЗ рд╕реЗ рдореБрдЭреЗ рддреНрд░реБрдЯрд┐ рдорд┐рд▓рддреА рд╣реИ Error: Unexpected compiler option moduleResolution
cd types\react
npm i
рдлрд┐рд░ npm run lint <my-package>
рдЪрд▓ рд░рд╣рд╛ рд╣реИ рдореБрдЭреЗ csstype
рддрд░рд╣ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреА рднрд╛рд░реА рдорд╛рддреНрд░рд╛ рджрд┐рдЦрд╛рддрд╛ рд╣реИ
../react/node_modules/csstype/index.d.ts(2071,31): error TS1005: '(' expected.
../react/node_modules/csstype/index.d.ts(2083,19): error TS2693: 'LetterSpacingProperty' only refers to a type, but is being used as a value here.
../react/node_modules/csstype/index.d.ts(2083,49): error TS1005: '(' expected.
../react/node_modules/csstype/index.d.ts(2096,15): error TS2693: 'LineBreakProperty' only refers to a type, but is being used as a value here.
рдФрд░ рдЗрд╕реА рддрд░рд╣ рдХреА рд╕реИрдХрдбрд╝реЛрдВ рдкрдВрдХреНрддрд┐рдпрд╛рдБ
1/2 рдЪрд░рдгреЛрдВ рдХреЛ рдкреВрд░рд╛ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж
рдЗрд╕реЗ "рдиреЛрдб" рдХреЛ рдХреИрдкрд┐рдЯрд▓ "N" рдХреЗ рд╕рд╛рде рд▓рд┐рдЦрдХрд░ рд╣рд▓ рдХрд░реЗрдВ:
"moduleResolution": "Node"
рд╣рдорд╛рд░реА рддрд░рдл рд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред
https://www.typescriptlang.org/docs/handbook/compiler-options.html
"moduleResolution": "Node"
рд╕рдорд╛рдзрд╛рди рдиреЗ рдореЗрд░реЗ рд▓рд┐рдП рдЗрд╕реЗ рдареАрдХ рдирд╣реАрдВ рдХрд┐рдпрд╛, рд▓реЗрдХрд┐рди /types/react
рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рдЬрд╛рдиреЗ рдФрд░ npm install
рдЪрд▓рд╛рдиреЗ рд╕реЗ рд╕рдорд╕реНрдпрд╛ рд╣рд▓ рд╣реЛ рдЧрдИред
рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА
рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдВ
compilerOptions.moduleResolution: "node"
(рдУрд░реНрдЯрд╛ рджреНрд╡рд╛рд░рд╛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ: рдпрджрд┐ рдЖрдк рдЗрд╕реЗ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЯрд╛рдЗрдк рдХрд┐рдП рдЧрдП рдХреЗ рдЕрдВрджрд░ рджреЗрдЦ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рдирд┐рд░реНрднрд░рддрд╛ рдореЗрдВ
npm install
рдЪрд▓рд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдЬрд╣рд╛рдВ рдЖрдк рдЙрд╕ рддреНрд░реБрдЯрд┐ рдХреЛ рджреЗрдЦ рд░рд╣реЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдПcd types/react; npm install
рдФрд░ рдлрд┐рд░ рд▓рд┐рд╕реНрдЯрд┐рдВрдЧ рдмреЗрд╣рддрд░ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП - https рджреЗрдЦреЗрдВ: //github.com/microsoft/dtslint/issues/226 )