рдпрджрд┐ рдЖрдк рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рд╕рдорд╕реНрдпрд╛ рдХреЛ рдХреИрд╕реЗ рдареАрдХ рдХрд┐рдпрд╛ рдЬрд╛рдП, рддреЛ рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рдкреБрд▓ рдЕрдиреБрд░реЛрдз рдХрд░реЗрдВред
[x] рдореИрдВрдиреЗ @types/styled-components
рдкреИрдХреЗрдЬ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рдФрд░ рд╕рдорд╕реНрдпрд╛рдПрдВ рдереАрдВ рдХреНрдпреЛрдВрдХрд┐ v.4.1.9 рдХреЗ рдмрд╛рдж рд╕реЗ рдПрдХ рдФрд░ рд╡рд┐рд╡рд╛рджрд┐рдд рдирд┐рд░реНрднрд░рддрд╛ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ рдерд╛ (@ рдкреНрд░рдХрд╛рд░/рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рдореВрд▓) рдФрд░ @ рдкреНрд░рдХрд╛рд░/рдиреЛрдб рдХреЗ рд╕рд╛рде рд╕рдВрдШрд░реНрд╖ред рдкреНрд░рддрд┐рдмрджреНрдз рджреЗрдЦреЗрдВ
[x] рдореИрдВрдиреЗ tsc рдХреЗ рдирд╡реАрдирддрдо рд╕реНрдерд┐рд░ рд╕рдВрд╕реНрдХрд░рдг (3.3.3333) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреАред https://www.npmjs.com/package/typescript
[x] [рдЙрд▓реНрд▓реЗрдЦ] (https://github.com/blog/821-mention-somebody-the-re-notified) рд▓реЗрдЦрдХ (рджреЗрдЦреЗрдВ Definitions by:
рдореЗрдВ index.d.ts
) рддрд╛рдХрд┐ рд╡реЗ рдХрд░ рд╕рдХреЗрдВ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛.
рдХрдорд╛рдВрдб рджреНрд╡рд╛рд░рд╛ рддрд╛рдЬрд╝рд╛ рдЗрдВрд╕реНрдЯрд╛рд▓ рд░рд┐рдПрдХреНрдЯ рдРрдк
yarn create react-app my-app-ts --scripts-version=react-scripts-ts
yarn add styled-components
yarn add -D @types/styled-components
import * as React from 'react';
import * as ReactDOM from 'react-dom';
import {ThemeProvider} from "styled-components";
import App from './App';
import './index.css';
import registerServiceWorker from './registerServiceWorker';
ReactDOM.render(
<ThemeProvider theme={{}}>
<App />
</ThemeProvider>,
document.getElementById('root') as HTMLElement
);
registerServiceWorker();
yarn start
рдХрдИ рдкрд░рд┐рднрд╛рд╖рд╛рдУрдВ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рд╡рд┐рдлрд▓рддрд╛рдУрдВ рдХрд╛ рдПрдХ рдмрд╣реБрдд рдХреБрдЫ рд╣реИ lib.dom рдХреЗ рд╕рд╛рде рд╡рд┐рд░реЛрдз
рдореЗрд░рд╛ рднреА рдпрд╣реА рд╡рд┐рдЪрд╛рд░ рд╣реИ
@types/react-native рдХреЛ рдмрд┐рд▓реНрдХреБрд▓ рдХреНрдпреЛрдВ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛? рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рд╡реЗрдм рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╣реИ, рдореБрдЭреЗ рдЯрд╛рдЗрдкрд┐рдВрдЧ рдХреНрдпреЛрдВ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреА рд╣реИ рдЬрд┐рд╕рдХрд╛ рдореИрдВ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рддрд╛?
рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рд╕реЗрдЯ рдХрдВрдкрд╛рдЗрд▓рд░Options.types рджреНрд╡рд╛рд░рд╛ рддрдп рдХрд┐рдпрд╛ рдЧрдпрд╛
{
"compilerOptions": {
...
"types": ["react", "jest"]
}
...
}
рдореЗрд░рд╛ рднреА рдпрд╣реА рдореБрджреНрджрд╛ рд╣реИред
рдпрд╣рд╛рдБ рд╡рд╣реА рдореБрджреНрджрд╛ред
рдЪреВрдВрдХрд┐ рдореЗрд░реА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдореЗрд░реА рдХрдИ рдкреНрд░рдХрд╛рд░ рдХреА рдкрд░рд┐рднрд╛рд╖рд╛рдПрдВ рд╣реИрдВ, @types/styled-components
рдореИрдВрдиреЗ рдкрд┐рдЫрд▓реЗ рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд▓рд┐рдП
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ tsconfig.json
рдореЗрдВ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдкреНрд░рдХрд╛рд░ рдЬреЛрдбрд╝рдирд╛ рдПрдХ рдЦрд░рд╛рдм рд╕рдорд╛рдзрд╛рди рд╣реИред
рд╡реЗрдм рдХреЗ рд▓рд┐рдП рдФрд░ рдореВрд▓ рдирд┐рд╡рд╛рд╕реА рдХреЗ рд▓рд┐рдП styled-components
рдХреЗ рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЛ рдЕрд▓рдЧ рдХрд░рдирд╛ рдмреЗрд╣рддрд░ рд╣реЛрдЧрд╛ред
рдореБрдЭреЗ рдЗрд╕ рдлреЙрд░реНрдордбрд╛рдЯрд╛ рдХреЗ рд╕рд╛рде рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рд╣реИ, рдореИрдВ typescript: 3.3.333
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдпрд╣рд╛рдВ рдореЗрд░рд╛ package.json
рдФрд░ tsconfig.json
рдкреИрдХреЗрдЬ JSON
"dependencies": {
"@material-ui/core": "^3.9.2",
"@types/react-loadable": "^5.5.0",
"@types/react-router-dom": "^4.3.1",
"prettier": "^1.16.4",
"react": "^16.8.4",
"react-dom": "^16.8.4",
"react-loadable": "^5.5.0",
"react-router-dom": "^5.0.0",
"react-scripts-ts": "3.1.0",
"styled-components": "^4.1.3"
},
"devDependencies": {
"@types/jest": "^24.0.11",
"@types/node": "^11.11.3",
"@types/react": "^16.8.8",
"@types/react-dom": "^16.8.2",
"@types/styled-components": "^4.1.12",
"eslint": "5.3.0",
"eslint-config-airbnb-base": "13.1.0",
"eslint-plugin-import": "^2.14.0",
"typescript": "^3.3.3333"
}
TSCONFIG JSON
{
"compilerOptions": {
"baseUrl": ".",
"outDir": "build/dist",
"module": "esnext",
"target": "es5",
"lib": ["es6", "dom"],
"sourceMap": true,
"allowJs": true,
"jsx": "react",
"moduleResolution": "node",
"rootDir": "src",
"forceConsistentCasingInFileNames": true,
"noImplicitReturns": true,
"noImplicitThis": true,
"noImplicitAny": true,
"importHelpers": true,
"strictNullChecks": true,
"suppressImplicitAnyIndexErrors": true,
"noUnusedLocals": true,
"esModuleInterop": true,
"types": ["styled-components", "react", "react-dom", "jest"]
},
"exclude": [
"node_modules",
"build",
"scripts",
"acceptance-tests",
"webpack",
"jest",
"src/setupTests.ts"
]
}
рдореЗрд░реА рднреА рдпрд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реИред рд╕реМрднрд╛рдЧреНрдп рд╕реЗ, рдореИрдВ @types/styled-components
рд╕реЗ 4.1.8
рдХреЗ рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рд▓реЙрдХ рдХрд░рдХреЗ рд╕рдорд╕реНрдпрд╛ рдХреЛ рджреВрд░ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдерд╛
рдпрд╣рд╛рдБ рднреА, рдореБрдЭреЗ рдпрд╛ рддреЛ рдкрд┐рдЫрд▓реЗ рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рд╡рд╛рдкрд╕ рдЬрд╛рдирд╛ рдерд╛, рдпрд╛ рдиреЛрдб_рдореЙрдбреНрдпреВрд▓реНрд╕ рд╕реЗ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рдореВрд▓ рдХреЛ рд╣рдЯрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреЛрд╕реНрдЯ-рдЗрдВрд╕реНрдЯреЙрд▓ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЬреЛрдбрд╝рдирд╛ рдерд╛
рдЖрдкрдХреЛ рд╡реЗрдм рдкрд░ рд╕реНрдЯрд╛рдЗрд▓-рдШрдЯрдХреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреИрд╕реЗ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП, рдпрджрд┐ рдЗрд╕рдХреА рдирд┐рд░реНрднрд░рддрд╛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдбреЛрдо рд▓рд┐рдмреНрд╕ рдХреЗ рд╕рд╛рде рдЯрдХрд░рд╛рддреА рд╣реИ ?!
рдпрд╣ рдкрд╛рдЧрд▓ рд╣реИ!
рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реИ рдФрд░ рдореИрдВрдиреЗ рдпрд╣ рднреА рджреЗрдЦрд╛ рдХрд┐ рд╕рднреА рд▓реЗрдЦрдХреЛрдВ рдХреЛ рдЕрдзрд┐рд╕реВрдЪрд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдпреЗ рджреЛрдиреЛрдВ рдЧрд╛рдпрдм рд╣реИрдВ: @eps1lon @flavordaaave
@ArthurBrito рдзрдиреНрдпрд╡рд╛рдж, рд▓реЗрдЦрдХреЛрдВ рдХреА рд╕реВрдЪреА рдЕрдкрдбреЗрдЯ рдХреА рдЧрдИ рдереАред
рдпрд╣ рдореБрджреНрджрд╛ рдореЗрд░реЗ рд╕рд╛рде рднреА рд╣реЛ рд░рд╣рд╛ рд╣реИред @ рдкреНрд░рдХрд╛рд░/рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рдореВрд▓ рд╡реЗрдм рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВ рдирд┐рд░реНрднрд░рддрд╛ рдирд╣реАрдВ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред рдЗрди рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЛ рдЕрд▓рдЧ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП
рдЬрд╣рд╛рдВ рддрдХ тАЛтАЛтАЛтАЛрдореИрдВ рдмрддрд╛ рд╕рдХрддрд╛ рд╣реВрдВ рдХрд┐ рдпрд╣ #32843 рдХреЗ рдХрд╛рд░рдг рд╣реБрдЖ рдерд╛ рдЬрд┐рд╕реЗ 4.1.9 рдХреЗ рд░реВрдк рдореЗрдВ рдЬрд╛рд░реА рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ ред рдпрд╣ рдЯрд┐рдкреНрдкрдгреА рдЗрд╕рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддреА рд╣реИред
рдореИрдВрдиреЗ рдЗрд╕ рдореБрджреНрджреЗ рдХреЗ рд╕рдВрджрд░реНрдн рдореЗрдВ рдЙрд╕ рд╕реВрддреНрд░ рдореЗрдВ рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдкреЛрд╕реНрдЯ рдХреАред
/рд╕реАрд╕реА @minestarks
4.1.8 рдХреЗ рд▓рд┐рдП рд╕рддреНрдпрд╛рдкрди рдлрд┐рдХреНрд╕рд┐рдВрдЧ рдореЗрд░реЗ рд▓рд┐рдП рдХрд╛рдо рдХрд┐рдпрд╛
рдХреНрдпрд╛ рдпрд╣рд╛рдВ рдХреЛрдИ рдкреАрдЖрд░ рд╣реИ рдЬреЛ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рдорд╛рдзрд╛рди рдХрд░рддрд╛ рд╣реИ? рдЕрдЬреАрдм рдЖрдк рд╡реЗрдм рдкреНрд░реЛрдЬреЗрдХреНрдЯреНрд╕ рдореЗрдВ рд╕реНрдЯрд╛рдЗрд▓-рдШрдЯрдХреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдПрдХ рд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реИ, рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдпрд╣ рд▓рдЧрднрдЧ @types/styled-component
ред
my-app git:(master) тЬЧ npm ls @types/react-native
[email protected] /Users/devniel/dev/electron/my-app
тФФтФАтФм @types/[email protected]
тФФтФАтФА @types/[email protected]
рдЗрд╕ рдореБрджреНрджреЗ рдкрд░ рдХреЛрдИ рдЕрдкрдбреЗрдЯ?
рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕рд╛рдордЧреНрд░реА рдХреЗ рд╕рд╛рде .yarnclean
рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдПрдБ:
@types/react-native
рд╕рдорд╕реНрдпрд╛ рдХреЛ рдареАрдХ рдХрд░рддрд╛ рд╣реИ
рдЖрдзрд╛ рд╕рд╛рд▓ рдФрд░ рдЕрднреА рднреА рдЗрд╕ рдореБрджреНрджреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдЕрдкрдбреЗрдЯ рдирд╣реАрдВ рд╣реИ?
рд╕рдЪ рдореЗрдВ рдХреЛрдИ рдЕрдкрдбреЗрдЯ рдирд╣реАрдВ???
рдореЗрд░реА рд░рд╛рдп рдореЗрдВ, рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╕рдорд╛рдзрд╛рди @ рдкреНрд░рдХрд╛рд░/рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рдореВрд▓ рдХреЛ рдПрдХ рд╕рд╣рдХрд░реНрдореА рдирд┐рд░реНрднрд░рддрд╛ рдмрдирд╛рдирд╛ рд╣реЛрдЧрд╛, рд▓реЗрдХрд┐рди рдореЗрд░реА рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП types-publisher
рдЗрд╕ рд╕рдордп рдЗрдирдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реИред рдХреНрдпрд╛ рдЕрдиреБрд░рдХреНрд╖рдХреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХреГрдкрдпрд╛ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рд╣реА рд╣реВрдВ рдФрд░ рдкреАрдпрд░рдбреЗрдк рдПрдХ рд╕рдорд╛рдзрд╛рди рд╣реИ? рдЕрдЧрд░ рд╣рдо рдЬрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдЪреНрдЫреЗ рд╣реИрдВ, рддреЛ рдореИрдВ рдЯрд╛рдЗрдк-рдкрдмреНрд▓рд┐рд╢рд░ рдХреЛ рдкреАрдпрд░рдбрд┐рдк рд╕рдорд░реНрдерди рдЬреЛрдбрд╝рдХрд░ рд╕рдкреНрддрд╛рд╣рд╛рдВрдд рдкрд░ рдХреБрдЫ рд╕рдордп рдмрд┐рддрд╛рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛ рд╕рдХрддрд╛ рд╣реВрдВред
рдореЗрд░реА рд░рд╛рдп рдореЗрдВ, рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╕рдорд╛рдзрд╛рди @ рдкреНрд░рдХрд╛рд░/рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рдореВрд▓ рдХреЛ рдПрдХ рд╕рд╣рдХрд░реНрдореА рдирд┐рд░реНрднрд░рддрд╛ рдмрдирд╛рдирд╛ рд╣реЛрдЧрд╛
рд╣рдореНрдо, рдЕрдЧрд░ @types/react-native
рдПрдХ рд╕рд╣рдХрд░реНрдореА рдкреНрд░рддрд┐рдирд┐рдзрд┐ рд╣реИ, рддреЛ рдореБрдЭреЗ рдЧреИрд░-рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдореВрд▓ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ @types/styled-components
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕реЗ рдПрдХ рдирд┐рд░реНрднрд░рддрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдШреЛрд╖рд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред рдпрд╣ рдЖрджрд░реНрд╢ рдирд╣реАрдВ рд╣реИред
рдЖрджрд░реНрд╢ рд░реВрдк рд╕реЗ @types/react-native
рдПрдХ рдЧреИрд░-рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдореВрд▓ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдирд╣реАрдВ рд╣реЛрдЧрд╛; рдФрд░ рдореБрдЭреЗ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдЗрд╕реЗ рдПрдХ рдирд┐рд░реНрднрд░рддрд╛ рдХреЗ рд░реВрдк рдореЗрдВ _declare_ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред
рдХреНрдпрд╛ рдЖрдк рдЗрд╕реЗ рд╡реИрдХрд▓реНрдкрд┐рдХ рдирд┐рд░реНрднрд░рддрд╛ рдмрдирд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ?
@paulmelnikow , рд╣рд╛рдБ, рддреБрдо рд╕рд╣реА рд╣реЛ, рдореИрдВрдиреЗ рджреЛрдиреЛрдВ рдХреЛ рднреНрд░рдорд┐рдд рдХрд░ рджрд┐рдпрд╛ рд╣реИред рддреБрдо рдЕрдм рднреА рдШреЛрд╖рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреА рдЬрд░реВрд░рдд рдирд╣реАрдВ рд╣реЛрдЧреА @types/react-native
рдПрдХ рдирд┐рд░реНрднрд░рддрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдХреНрд░рдо рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП @types/styled-components
, рдЗрд╕рд▓рд┐рдП optionalDeps, рдПрдХ рдмреЗрд╣рддрд░ рд╕рдорд╛рдзрд╛рди рд╣реИ, рдЬрд╝рд╛рд╣рд┐рд░ рд╣реИ, рд▓реЗрдХрд┐рди рдЖрдк рдПрдХ рдкрд░реЗрд╢рд╛рди рдХрд░рдиреЗ рдХреА рдЪреЗрддрд╛рд╡рдиреА рдорд┐рд▓ рдЬрд╛рдПрдЧрд╛ред types-publisher
рднреА рдЙрдирдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдореИрдВ рдЗрд╕ рдкрд░ рдЧреМрд░ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реВрдВрдЧрд╛
"@ рдкреНрд░рдХрд╛рд░/рд╢реИрд▓реА-рдШрдЯрдХреЛрдВ": "4.0.0" рдореЗрдВ рдЕрдкрдЧреНрд░реЗрдб рдХрд░рдиреЗ рд╕реЗ рд╕рдорд╕реНрдпрд╛ рд╣рд▓ рд╣реЛ рдЧрдИред
рдирд╣реАрдВ, рдпрд╣ рд╣рд▓ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИред рдпрд╣ рдХрд╛рд▓реАрди рдХреЗ рдиреАрдЪреЗ рдХреА рд╕рдорд╕реНрдпрд╛ рдХреЛ рджреВрд░ рдХрд░рддрд╛ рд╣реИ
рдирд╣реАрдВ, рдпрд╣ рд╣рд▓ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИред рдпрд╣ рдХрд╛рд▓реАрди рдХреЗ рдиреАрдЪреЗ рдХреА рд╕рдорд╕реНрдпрд╛ рдХреЛ рджреВрд░ рдХрд░рддрд╛ рд╣реИ
рдорд╛рди рд▓реАрдЬрд┐рдП рдХрд┐ рдпрд╣ рдлрд┐рд░ рд╕реЗ рд╕рдВрдХрд▓рд┐рдд рд╣реИ? ;-)
рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕рд╛рдордЧреНрд░реА рдХреЗ рд╕рд╛рде
.yarnclean
рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдПрдБ:@types/react-native
рд╕рдорд╕реНрдпрд╛ рдХреЛ рдареАрдХ рдХрд░рддрд╛ рд╣реИ
рдХреНрдпрд╛ npm рдХреЗ рд╕рд╛рде рдХреЛрдИ рд╕рдордХрдХреНрд╖ рд╣реИ?
рдЗрд╕ рдореБрджреНрджреЗ рдкрд░ рдХреЛрдИ рдкреНрд░рдЧрддрд┐?
рдпрд╣ рд╕реНрдЯрд╛рдЗрд▓-рдШрдЯрдХреЛрдВ рдХреЛ рдЯрд╛рдЗрдкрдкреНрд░рддрд┐ рдХреЗ рд╕рд╛рде рдЕрдиреБрдкрдпреЛрдЧреА рдмрдирд╛рддрд╛ рд╣реИред
рдЗрд╕ рд░реЗрдкреЛ рдХреЗ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдХреЛрдб рдореЗрдВ рдЧреЛрддрд╛ рд▓рдЧрд╛рддреЗ рд╣реБрдП, рдЖрдк рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ @types/react-native
рдХреЗрд╡рд▓ рд╡рд╛рд╕реНрддрд╡рд┐рдХ .d.ts
рдФрд░ рд░рд┐рдПрдХреНрдЯ рдиреЗрдЯрд┐рд╡ рдПрдХреАрдХрд░рдг рдХреЗ рд▓рд┐рдП рдкрд░реАрдХреНрд╖рдг рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЖрд╡рд╢реНрдпрдХ рд╣реИред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд░рд┐рдПрдХреНрдЯ рдиреЗрдЯрд┐рд╡ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдХрд┐рд╕реА рднреА рдЪреАрдЬрд╝ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрдзрд┐рдХ рдЙрдкрдпреБрдХреНрдд рд╕рдорд╛рдзрд╛рди рдпрд╣ рд╣реЛрдЧрд╛ рдХрд┐ рдЗрд╕реЗ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рд╕рдмрдореЙрдбреНрдпреВрд▓/рд╡реИрдХрд▓реНрдкрд┐рдХ/рд╕рд╣рдХрд░реНрдореА рдирд┐рд░реНрднрд░рддрд╛ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдП, рдЬреЛ рдХрд┐ styled-components
рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдХреЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЗ рдЕрдиреБрд░реВрдк рд╣реИ, рдЖрдк styled-components/native
рдЖрдпрд╛рдд рдХрд░рддреЗ рд╣реИрдВ styled-components
рдЖрдпрд╛рдд рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рд░рд┐рдПрдХреНрдЯ рдиреЗрдЯрд┐рд╡ рд╕рд╛рдорд╛рди рдХрд╛ рдкреВрд░рд╛ рдЬрдВрдЧрд▓ рднреА рд░рдирдЯрд╛рдЗрдо рдореЗрдВ рдкреНрд░рд╛рдкреНрдд рдХрд░рддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдХреЗрд╡рд▓ styled-components
рдЖрдпрд╛рдд рдХрд░рдХреЗ рдореБрдЭреЗ @types/react-native
рдХрд╛ рдкреВрд░рд╛ рдЬрдВрдЧрд▓ рднреА рдирд╣реАрдВ рдорд┐рд▓рдирд╛ рдЪрд╛рд╣рд┐рдПред
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕ рдмреАрдЪ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рдореВрд▓ рдПрдХреАрдХрд░рдг рдХреЛ рдЗрд╕ рдкреИрдХреЗрдЬ рдХреЗ рдПрдирдкреАрдПрдо рдкреНрд░рдХрд╛рд╢рд┐рдд рд╕рдВрд╕реНрдХрд░рдг рд╕реЗ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдФрд░ рдЗрд╕реЗ рдЕрдкрдиреЗ рдкреИрдХреЗрдЬ рдХреЗ рд░реВрдк рдореЗрдВ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдЬреИрд╕рд╛ рдХрд┐ рдпрд╣ рдЦрдбрд╝рд╛ рд╣реИ рдпрд╣ рд╢рд░реНрдордирд╛рдХ рд░реВрдк рд╕реЗ рдЯреВрдЯрд╛ рд╣реБрдЖ рд╣реИ рдФрд░ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдкреВрд░реА рддрд░рд╣ рдЦрд░рд╛рдм рджрд┐рдЦрддрд╛ рд╣реИ
рдХреГрдкрдпрд╛ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдареАрдХ рдХрд░реЗрдВред рджреЗрд╢реА рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЛ ASAP рд╕реЗ рдмрд╛рд╣рд░ рдирд┐рдХрд╛рд▓реЗрдВред рдпрд╣ рдПрдХ рдЕрдиреНрдп рдЙрддреНрдХреГрд╖реНрдЯ рдЯрд╛рдЗрдкрд┐рдВрдЧ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЛ рд▓рдЧрднрдЧ рдЕрдиреБрдкрдпреЛрдЧреА рдмрдирд╛рддрд╛ рд╣реИред
рдЗрд╕ рд░реЗрдкреЛ рдХреЗ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдХреЛрдб рдореЗрдВ рдЧреЛрддрд╛ рд▓рдЧрд╛рддреЗ рд╣реБрдП, рдЖрдк рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐
@types/react-native
рдХреЗрд╡рд▓ рд╡рд╛рд╕реНрддрд╡рд┐рдХ.d.ts
рдФрд░ рд░рд┐рдПрдХреНрдЯ рдиреЗрдЯрд┐рд╡ рдПрдХреАрдХрд░рдг рдХреЗ рд▓рд┐рдП рдкрд░реАрдХреНрд╖рдг рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЖрд╡рд╢реНрдпрдХ рд╣реИред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд░рд┐рдПрдХреНрдЯ рдиреЗрдЯрд┐рд╡ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдХрд┐рд╕реА рднреА рдЪреАрдЬрд╝ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрдзрд┐рдХ рдЙрдкрдпреБрдХреНрдд рд╕рдорд╛рдзрд╛рди рдпрд╣ рд╣реЛрдЧрд╛ рдХрд┐ рдЗрд╕реЗ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рд╕рдмрдореЙрдбреНрдпреВрд▓/рд╡реИрдХрд▓реНрдкрд┐рдХ/рд╕рд╣рдХрд░реНрдореА рдирд┐рд░реНрднрд░рддрд╛ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдП, рдЬреЛ рдХрд┐styled-components
рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдХреЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЗ рдЕрдиреБрд░реВрдк рд╣реИ, рдЖрдкstyled-components/native
рдЖрдпрд╛рдд рдХрд░рддреЗ рд╣реИрдВstyled-components
рдЖрдпрд╛рдд рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рд░рд┐рдПрдХреНрдЯ рдиреЗрдЯрд┐рд╡ рд╕рд╛рдорд╛рди рдХрд╛ рдкреВрд░рд╛ рдЬрдВрдЧрд▓ рднреА рд░рдирдЯрд╛рдЗрдо рдореЗрдВ рдкреНрд░рд╛рдкреНрдд рдХрд░рддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдХреЗрд╡рд▓styled-components
рдЖрдпрд╛рдд рдХрд░рдХреЗ рдореБрдЭреЗ@types/react-native
рдХрд╛ рдкреВрд░рд╛ рдЬрдВрдЧрд▓ рднреА рдирд╣реАрдВ рдорд┐рд▓рдирд╛ рдЪрд╛рд╣рд┐рдПред
рдореИрдВ
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕ рдмреАрдЪ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рдореВрд▓ рдПрдХреАрдХрд░рдг рдХреЛ рдЗрд╕ рдкреИрдХреЗрдЬ рдХреЗ рдПрдирдкреАрдПрдо рдкреНрд░рдХрд╛рд╢рд┐рдд рд╕рдВрд╕реНрдХрд░рдг рд╕реЗ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдФрд░ рдЗрд╕реЗ рдЕрдкрдиреЗ рдкреИрдХреЗрдЬ рдХреЗ рд░реВрдк рдореЗрдВ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рд╕рдорд╛рдзрд╛рди рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдпрд╣ рднреА рдЖрд╢реНрдЪрд░реНрдп рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдЙрди рджреЛрдиреЛрдВ рдХреЛ рдПрдХ рд╣реА рдкреИрдХреЗрдЬ рдореЗрдВ рднреЗрдЬрдиреЗ рдХрд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдЬреИрд╕рд╛ рдХрд┐ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЗ рдмрд┐рдирд╛ # 32843 рдХрд╛ рдЬреЛрд░ рдерд╛ред
рдпрд╣ рдХрд╣рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд┐рд░реНрдл рдПрдХ рджреЛрд╕реНрддрд╛рдирд╛ рдиреЛрдЯ рд╣реИ рдХрд┐ рдЗрд╕реЗ рдареАрдХ рдХрд░рдиреЗ рдХрд╛ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рддрд░реАрдХрд╛ рдПрдХ рд╕рдорд╛рдзрд╛рди рдХреЗ рд╕рд╛рде рдПрдХ рдкреАрдЖрд░ рдХреЛ рдЦреЛрджрдирд╛ рдФрд░ рдЦреЛрд▓рдирд╛ рд╣реИ, рдпрд╛ рдХрд┐рд╕реА рдРрд╕реЗ рд╡реНрдпрдХреНрддрд┐ рдХреЛ рдвреВрдВрдврдирд╛ рд╣реИ рдЬреЛ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рд╕реНрдЯрд╛рдЗрд▓ рд╡рд╛рд▓реЗ рдШрдЯрдХреЛрдВ рдореЗрдВ рдирд┐рд╡реЗрд╢ рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдареАрдХ рдХрд░ рд╕рдХрддрд╛ рд╣реИред
рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЯрд╛рдЗрдк рдХрд┐рдпрд╛ рдЧрдпрд╛ рдкреИрдХреЗрдЬ рд╕рдореБрджрд╛рдп рдХреЗ рд▓рд┐рдП рдПрдХ рднрдпрд╛рдирдХ рд╕реЗрд╡рд╛ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ рдФрд░ рдпрд╣рд╛рдВ рдЕрдиреБрд░рдХреНрд╖рдХ рд╣реИрдВ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЙрдирдХрд╛ рдХрд╛рдо рд╕рднреА рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЛ рдмрдирд╛рдП рд░рдЦрдирд╛ рдирд╣реАрдВ рд╣реИред рдЗрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ (рдпрд╛ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкрд░) рдЕрдкрдиреА рдореБрдЯреНрдареА рд╣рд┐рд▓рд╛рдиреЗ рд╕реЗ рдХреЛрдИ рдорджрдж рдирд╣реАрдВ рдорд┐рд▓рдиреЗ рд╡рд╛рд▓реА рд╣реИред
рдореИрдВ рднрд╛рд╡рдирд╛рдУрдВ рдкрд░ рд╕реНрд╡рд┐рдЪ рдХрд░ рд░рд╣рд╛ рд╣реВрдБ
рдЙрдирдореЗрдВ рдЕрдкрдиреА рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкрд░рд┐рднрд╛рд╖рд╛рдПрдВ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ, рдФрд░ рдЙрдирдХрд╛ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдмрд┐рд▓реНрдХреБрд▓ рд╕рдорд╛рди рд╣реИ рдЗрд╕рд▓рд┐рдП рдорд╛рдЗрдЧреНрд░реЗрдЯ рдХрд░рдирд╛ рдПрдХ рдЖрд╕рд╛рди рдЦреЛрдЬ рд╣реИ рдФрд░ рд╕рднреА рдХреЛ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддрд╛ рд╣реИред
рд╕рд╛рде рд╣реА рдмрдВрдбрд▓ рдХрд╛ рдЖрдХрд╛рд░ рдереЛрдбрд╝рд╛ рдЫреЛрдЯрд╛ рд╣реЛрддрд╛ рд╣реИред
рдХреИрд╕реЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣рдо рд╕рд┐рд░реНрдл #32843 рдореЗрдВ рдкреЗрд╢ рдХрд┐рдП рдЧрдП рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЛ рд╡рд╛рдкрд╕ рд▓рд╛рддреЗ рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕рдиреЗ> 90% рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдЯрд╛рдЗрдкрд┐рдВрдЧ рдХреЛ рддреЛрдбрд╝ рджрд┐рдпрд╛ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдЗрд╕ рдереНрд░реЗрдб рдореЗрдВ рдЙрд▓реНрд▓рд┐рдЦрд┐рдд рдкреБрд░рд╛рдиреЗ рд╕рдВрд╕реНрдХрд░рдг рдпрд╛ рдХреБрдЫ рд╣реИрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рдХрд┐рдпрд╛ред
рдХреИрд╕реЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣рдо рд╕рд┐рд░реНрдл #32843 рдореЗрдВ рдкреЗрд╢ рдХрд┐рдП рдЧрдП рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЛ рд╡рд╛рдкрд╕ рд▓рд╛рддреЗ рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕рдиреЗ> 90% рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдЯрд╛рдЗрдкрд┐рдВрдЧ рдХреЛ рддреЛрдбрд╝ рджрд┐рдпрд╛ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдЗрд╕ рдереНрд░реЗрдб рдореЗрдВ рдЙрд▓реНрд▓рд┐рдЦрд┐рдд рдкреБрд░рд╛рдиреЗ рд╕рдВрд╕реНрдХрд░рдг рдпрд╛ рдХреБрдЫ рд╣реИрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рдХрд┐рдпрд╛ред
рдпрд╣ рдПрдХ рдЙрдЪрд┐рдд рд╕рдорд╛рдзрд╛рди рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдпрджрд┐ рдпрд╣ рдЯрд╛рдЗрдкрд┐рдВрдЧ рдХреЛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд╡рд┐рд╢рд╛рд▓ рдмрд╣реБрдордд рдХреЗ рд▓рд┐рдП рдмреЗрд╣рддрд░ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдореИрдВ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдирд╣реАрдВ рдЬрд╛рдирддрд╛ рдХрд┐ рдкреАрдЖрд░ рдХреЛ рдордВрдЬреВрд░реА рдорд┐рд▓реЗрдЧреА рдпрд╛ рдирд╣реАрдВ, рд▓реЗрдХрд┐рди рдЕрдЧрд░ рдЖрдкрдХреЛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╕рдорд╛рдзрд╛рди рд╣реИ, рддреЛ рдкреАрдЖрд░ рдмрдирд╛рдиреЗ рдореЗрдВ рд╕рдВрдХреЛрдЪ рди рдХрд░реЗрдВред
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЕрдЧрд░ рдпрд╣ рд╡рд╛рдкрд╕реА рдХреА рдЬрд╛рдиреА рдереА, рддреЛ рдкреИрдХреЗрдЬ рдореЗрдВ рдХреБрдЫ рдиреЛрдЯреНрд╕ рдЬреЛрдбрд╝рдирд╛ рд╣реЛрдЧрд╛ рдХрд┐ рдЗрд╕реЗ рдмрд╛рдж рдореЗрдВ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рдореВрд▓ рдХреЗ рд╕рд╛рде рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рдирд╛ рд╣реИред рдореИрдВрдиреЗ рдЗрд╕реЗ рдЖрдЬрд╝рдорд╛рдпрд╛ рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рд╕рдВрднрд╡рддрдГ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рдореВрд▓ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП declare module
рдШреЛрд╖рдгрд╛ рдХреЗ рд╕рд╛рде рд╣рдЯрд╛рдП рдЧрдП рдЯрд╛рдЗрдкрд┐рдВрдЧ рдХреЛ рдХреЙрдкреА рдФрд░ рдкреЗрд╕реНрдЯ рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реЛрдЧрд╛ рдФрд░ рдЪреАрдЬреЗрдВ рдХрд╛рдо рдХрд░рдирд╛ рдЬрд╛рд░реА рд░рдЦреЗрдВрдЧреАред рд╣рд╛рд▓рд╛рдВрдХрд┐ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рдореВрд▓ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдРрд╕рд╛ рдХрд░рдирд╛ рд╢рд░реНрдо рдХреА рдмрд╛рдд рд╣реИред
рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЯреАрдмреАрдПрдЪ, рдЕрдЧрд░ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЯреАрдо рдЗрд╕ рддрд░рд╣ рдХреЗ рдореБрджреНрджреЛрдВ рдХреЛ рд╕рдВрднрд╛рд▓рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреЛрдИ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рдорд╛рд░реНрдЧрджрд░реНрд╢рди рдкреНрд░рджрд╛рди рдХрд░ рд╕рдХрддреА рд╣реИ, рддреЛ рдореБрдЭреЗ рдЕрдЪреНрдЫрд╛ рд▓рдЧреЗрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдХреЛрдИ рд╕рднреА рд╕рдорд╛рдзрд╛рдиреЛрдВ рдореЗрдВ "рдЦреЛ" рдЬрд╛рддрд╛ рд╣реИред
рдЖрдИрдПрдордУ, рдЗрд╕реЗ рд╡рд╛рдкрд╕ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП - рдореБрдЦреНрдп рд░реВрдк рд╕реЗ рдХреНрдпреЛрдВрдХрд┐ рд╡реЗрдм рд╕реНрдЯрд╛рдЗрд▓ рдШрдЯрдХ рдЗрдХреЛ-рд╕рд┐рд╕реНрдЯрдо рдмрдбрд╝рд╛ рд╣реИред
рдореИрдВ рдпрд╣ рдирд╣реАрдВ рдЬрд╛рдирддрд╛ рдХрд┐ рдпрд╣ рдЕрдм рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдРрд╕рд╛ рд╣реБрдЖ рдХрд░рддрд╛ рдерд╛ рдХрд┐ рд░рд┐рдПрдХреНрдЯ рдиреЗрдЯрд┐рд╡ рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ рдПрдХ рдЕрд▓рдЧ рдкрде рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХ рдЕрд▓рдЧ рдкреНрд░рдХрд╛рд░ рдХрд╛ рд╕реЗрдЯ рдорд┐рд▓реЗрдЧрд╛ рдЬреЛ рдореЗрд░реЗ рд▓рд┐рдП рдПрдХ рдЕрдЪреНрдЫрд╛ рд╕рдордЭреМрддрд╛ рдЬреИрд╕рд╛ рд▓рдЧ рд░рд╣рд╛ рдерд╛ред рдПрдЪрдЖрд░рдПрдо, рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣реА рд▓рд╛рддрд╛ рд╣реИред рдХрд┐ рдЗрд╕рдореЗрдВ рд╡рд╛рдкрд╕ред
рдореБрдЭреЗ рдЖрд╢реНрдЪрд░реНрдп рд╣реИ рдХрд┐ рд╢рд╛рдпрдж рдПрдХ рдкрд░рд┐рд╡реЗрд╢ рдореЙрдбреНрдпреВрд▓ рд░рдЦрдиреЗ рдХрд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рд▓реЛрдЧ рдЯреНрд░рд┐рдкрд▓ рд╕реНрд▓реИрд╢ рдЖрдпрд╛рдд рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЖрдпрд╛рдд рдХрд░рддреЗ рд╣реИрдВ рдЬреЛ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рдореВрд▓ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкреНрд░рдХрд╛рд░ рдЬреЛрдбрд╝рддрд╛ рд╣реИ?
+1 рдпрд╣рд╛рдВ, рд▓реЗрдХрд┐рди рдХреЗрд╡рд▓ рд╢рд┐рдХрд╛рдпрдд рдирд╣реАрдВ, рдЕрдЧрд░ рдХреЛрдИ рдХрд╛рд░реНрдп рдпреЛрдЬрдирд╛ рд╣реИ рддреЛ рдореИрдВ рднрд╛рдЧ рд▓реЗрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдФрд░ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред
рдореИрдВ рдпрд╣рд╛рдВ рдЖрдпрд╛, рдХреБрдЫ рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдореЗрдВ рдЕрдкрдирд╛ рдкреНрд▓рд╕ рд╡рди рдЬреЛрдбрд╝рдиреЗ рдЧрдпрд╛ред рдПрд╣рд╕рд╛рд╕ рд╣реБрдЖ рдХрд┐ рдореИрдВрдиреЗ рдкрд╣рд▓реЗ рд╣реА рдРрд╕рд╛ рдХрд░ рд▓рд┐рдпрд╛ рдерд╛... рдкрд┐рдЫрд▓реА рдмрд╛рд░ рдЬрдм рдореБрдЭреЗ рдЗрд╕ рдореБрджреНрджреЗ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рдирд╛ рдкрдбрд╝рд╛ рдерд╛ред
рдФрд░ рдпрд╣реА рдХрд╛рд░рдг рд╣реИ рдХрд┐ рдореИрдВрдиреЗ рдЕрдиреНрдп рдкреБрд╕реНрддрдХрд╛рд▓рдп рдЕрдиреБрд░рдХреНрд╖рдХреЛрдВ рд╕реЗ рднреАрдЦ рдорд╛рдБрдЧреА рд╣реИ рдХрд┐ рд╡реЗ рдЕрдкрдиреЗ рдкреНрд░рдХрд╛рд░реЛрдВ рдкрд░ рдкрдХрдбрд╝ рдмрдирд╛рдП рд░рдЦреЗрдВред рдпрд╣ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЛ рдЙрдирдХреЗ рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЗ рд╕рд╛рде рдЗрдирд▓рд╛рдЗрди рдЕрджреНрдпрддрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╛рдзреНрдп рдХрд░рддрд╛ рд╣реИред рдореБрдЭреЗ рдкрд╕рдВрдж рд╣реИ рдХрд┐ рдбрд┐рдл рдЯрд╛рдЗрдк рдиреЗ рд╕рдореБрджрд╛рдп рдХреА рдХрдИ рддрд░рд╣ рд╕реЗ рдорджрдж рдХреА рд╣реИ, рд▓реЗрдХрд┐рди рдЬрдм рд▓рд┐рдм рдореЗрдВрдЯреЗрдирд░реНрд╕ рдХреЗ рдкрд╛рд╕ рдЗрд╕реЗ рд╕реНрд╡рдпрдВ рдЯрд╛рдЗрдк рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рд╣реЛрддреА рд╣реИ (рдпрд╛ рдЯреАрдПрд╕ рдореЗрдВ рдлрд┐рд░ рд╕реЗ рд▓рд┐рдЦрдирд╛ рднреА) рддреЛ рдпрд╣ рдПрдХ рд╕реБрд░рдХреНрд╖рд┐рдд рджреБрдирд┐рдпрд╛ рдХреЗ рд▓рд┐рдП рдмрдирд╛рддрд╛ рд╣реИред
рдореИрдВ рднреА рдЗрд╕ рдореБрджреНрджреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╢рд╛рдВрдд рдФрд░ рд╢рд╛рдВрдд рд░рд╣ рд░рд╣рд╛ рдерд╛ рдХреНрдпреЛрдВрдХрд┐ рдореИрдВ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдПрдХ рд╕реНрдерд╛рдиреАрдп рдХреНрд▓реЛрди рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╣рд▓ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдерд╛, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рджреБрдирд┐рдпрд╛ рднрд░ рдХреЗ рд▓реЛрдЧреЛрдВ рдХреЛ рдЗрд╕ рдореБрджреНрджреЗ рд╕реЗ рдХрд╛рдлреА рдиреБрдХрд╕рд╛рди рд╣реБрдЖ рдерд╛ (6 рдорд╣реАрдиреЗ рд╕реЗ рдЕрдзрд┐рдХ)ред рдореИрдВ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдХрд┐ рдпрд╣ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдФрд░ рдЧрдВрднреАрд░ рд╕рдорд╕реНрдпрд╛ рдареАрдХ рд╣реЛ рдЬрд╛рдП, рдФрд░ рдЧреИрд░-рддрдХрдиреАрдХреА рдЬрд╛рдирдХрд╛рд░ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рд╡рд╛рдкрд╕ рдХреВрджрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдВред
рдХреНрдпрд╛ рдХреЛрдИ рдкреАрдЖрд░ рд╣реИ рдЬреЛ рдЕрдиреБрдореЛрджрди рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░ рд░рд╣рд╛ рд╣реИ? рдХреНрдпрд╛ рдореБрдЭреЗ рдХреЛрдб рдкрд░рд┐рд╡рд░реНрддрди рдХреА рдПрдХ рдкрдВрдХреНрддрд┐ рдбрд╛рд▓рдиреА рдЪрд╛рд╣рд┐рдП рдЬреЛ рдЕрдорд╛рдиреНрдп react-native
рд╡реИрд╢реНрд╡рд┐рдХ рдирд┐рд░реНрднрд░рддрд╛ рдХреЛ рд╣рдЯрд╛ рджреЗрддреА рд╣реИ (рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВрдиреЗ рдЕрдкрдиреЗ рдирд┐рдЬреА рдПрдирдкреАрдПрдо рд░реЗрдкреЛ рдХреЗ рдЕрдВрджрд░ рдХрд┐рдпрд╛ рдерд╛)?
рд╕рд╛рде рд╣реА, рдХреНрдпрд╛ рдХреЛрдИ рдХрд╛рд░рдг рд╣реИ рдХрд┐ react-native
рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ рд╡реИрд╢реНрд╡рд┐рдХ рдирд╛рдорд╕реНрдерд╛рдиреЛрдВ рдХреЗ рд╕рд╛рде рд╕рдВрдШрд░реНрд╖ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП? рдХреГрдкрдпрд╛ рдЗрд╕рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реЛрдВ рдФрд░ рдЕрдкрдиреЗ рд╡рд┐рдЪрд╛рд░ рд╕рд╛рдЭрд╛ рдХрд░реЗрдВред (рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдЖрд╢реНрдЪрд░реНрдп рд╣реИ рдХрд┐ рдЬрд┐рди рд▓реЛрдЧреЛрдВ рдиреЗ рдЕрдирдЬрд╛рдиреЗ рдореЗрдВ рд╣рдорд╛рд░реЗ рдХрд╛рдо рдХреЛ рддреЛрдбрд╝ рджрд┐рдпрд╛, рд╡реЗ рдХрднреА рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдкрдврд╝реЗрдВрдЧреЗ, рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рдЙрддрдиреЗ рдЦреБрд╢ рд╣реЛрдВрдЧреЗ рдЬрд┐рддрдирд╛ рдЙрдиреНрд╣реЗрдВ рд╣рдорд╛рд░реЗ рдиреБрдХрд╕рд╛рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреЛрдИ рдЬрд╛рдирдХрд╛рд░реА рдирд╣реАрдВ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред рдореИрдВ рдпрд╣ рдирд╣реАрдВ рдХрд╣ рд╕рдХрддрд╛ рдХрд┐ рдореИрдВ рдЗрд╕ рддрд░рд╣ рдХреЗ рдорд╛рдорд▓реЗ рдХреЗ рджреВрд╕рд░реЗ рдЫреЛрд░ рдкрд░ рдХрднреА рдирд╣реАрдВ рдерд╛ред рдЗрд╕рд╕реЗ рдкрд╣рд▓реЗред)
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЕрдиреНрдп рдкреИрдХреЗрдЬ рдЗрд╕ рддрд░рд╣ рдХреЗ рдореБрджреНрджреЗ рд╕реЗ рдХреИрд╕реЗ рдирд┐рдкрдЯрддреЗ рд╣реИрдВ? рдореБрдЭреЗ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреЛрдИ рдЬрд╛рдирдХрд╛рд░реА рдирд╣реАрдВ рд╣реИ рдЗрд╕рд▓рд┐рдП рдПрдХ _"рд╕рд░рд▓"_ рдкреАрдЖрд░ рдмрдирд╛рдиреЗ рдореЗрдВ рдереЛрдбрд╝реА рд╣рд┐рдЪрдХрд┐рдЪрд╛рд╣рдЯ рд╣реИ рдЬреЛ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рдЙрд▓рдЯ рджреЗрддрд╛ рд╣реИред
рдЬрдмрдХрд┐ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕ рдкрд░рд┐рд╡рд░реНрддрди рдХреЛ рд╡рд╛рдкрд╕ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рд╣рдореЗрдВ рдЗрд╕ рдХрд╛рдо рдХреЛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП skipLibCheck
рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рдиреЗ рдХреА рдХреЛрдИ рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рдереА: https://github.com/DefinitelyTyped/DefinitelyTyped/issues/33311#issuecomment -466731156ред рдХреГрдкрдпрд╛ рдордд рдХрд░реЛред
рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдЗрд╕ рдкрд░рд┐рд╡рд░реНрддрди рдХреЛ рдкреВрд░реНрд╡рд╡рдд рдХрд░рдирд╛ рдПрдХ рдЕрдЪреНрдЫрд╛ рд╡рд┐рдХрд▓реНрдк рд╣реИред рдмрд╣реБрдд рд╕реЗ рд▓реЛрдЧреЛрдВ рдХреЛ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рдореВрд▓ рдХреЗ рд▓рд┐рдП рдЯрд╛рдЗрдкрд┐рдВрдЧ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ рдФрд░ рд╣рдореЗрдВ рдЙрд╕ рдЪреАрдЬрд╝ рдХреЛ рдареАрдХ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдЬреЛ рддреНрд░реБрдЯрд┐ рдХрд╛ рдХрд╛рд░рдг рдмрдирддреА рд╣реИ рдФрд░ рд╕рднреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рдореВрд▓ рдЯрд╛рдЗрдкрд┐рдВрдЧ рдХреЛ рдирд╣реАрдВ рд╣рдЯрд╛рддреА рд╣реИред
рдФрд░ рдЕрдЧрд░ рдлрд┐рд▓рд╣рд╛рд▓ рдХреЛрдИ рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рд╣реИ? рд╣рдореЗрдВ рдЧреИрд░-рджреЗрд╢реА рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдХрдо рд╕реЗ рдХрдо рдПрдХ рд░рд┐рд▓реАрдЬрд╝ рдкреНрд░рджрд╛рди рдХрд░рдиреА рдЪрд╛рд╣рд┐рдП рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЗрд╕ рд╕рдордп рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЯреВрдЯрд╛ рд╣реБрдЖ рд╣реИ рдФрд░ рдХреБрдЫ рд╕рдордп рдХреЗ рд▓рд┐рдП рд╣реИ, рдФрд░ рдореИрдВ рдпрд╣ рдЕрдиреБрдорд╛рди рд▓рдЧрд╛рдиреЗ рдХрд╛ рд╕рд╛рд╣рд╕ рдХрд░реВрдВрдЧрд╛ рдХрд┐ рдЧреИрд░-рджреЗрд╢реА рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рднреА рдмрд╣реБрд╕рдВрдЦреНрдпрдХ рд╣реИрдВред
рдЗрд╕ рдкрд░ рдХреЛрдИ рдЕрдкрдбреЗрдЯ?
@dawick рд▓реЛрдЧ рдЬрд┐рдиреНрд╣реЗрдВ react-native
рдЯрд╛рдЗрдк рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЙрдиреНрд╣реЗрдВ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдЙрдиреНрд╣реЗрдВ рдмрд┐рд▓реНрдХреБрд▓ рдХреНрдпреЛрдВ рдЪрд╛рд╣рд┐рдП?
рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдЗрд╕ рдкрд░рд┐рд╡рд░реНрддрди рдХреЛ рдкреВрд░реНрд╡рд╡рдд рдХрд░рдирд╛ рдПрдХ рдЕрдЪреНрдЫрд╛ рд╡рд┐рдХрд▓реНрдк рд╣реИред рдмрд╣реБрдд рд╕реЗ рд▓реЛрдЧреЛрдВ рдХреЛ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рдореВрд▓ рдХреЗ рд▓рд┐рдП рдЯрд╛рдЗрдкрд┐рдВрдЧ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ рдФрд░ рд╣рдореЗрдВ рдЙрд╕ рдЪреАрдЬрд╝ рдХреЛ рдареАрдХ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдЬреЛ рддреНрд░реБрдЯрд┐ рдХрд╛ рдХрд╛рд░рдг рдмрдирддреА рд╣реИ рдФрд░ рд╕рднреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рдореВрд▓ рдЯрд╛рдЗрдкрд┐рдВрдЧ рдХреЛ рдирд╣реАрдВ рд╣рдЯрд╛рддреА рд╣реИред
рдЬрд┐рди рд▓реЛрдЧреЛрдВ рдХреЛ react-native
рд▓рд┐рдП рдЯрд╛рдЗрдкрд┐рдВрдЧ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЙрдиреНрд╣реЗрдВ @types/react-native
рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░рдХреЗ рдЙрдиреНрд╣реЗрдВ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред
рдореИрдВ рдЕрднреА рднреА рд╕реНрдерд┐рддрд┐ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИ рдХрд┐ рд╕рдм рдХреБрдЫ рдХрд╛ рджреГрдврд╝рддрд╛ рд╕реЗ рдХрд░ рд░рд╣рд╛ рд╣реВрдБ react-native
рд╕реЗ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП @types/styled-components
рдФрд░ рдПрдХ рдЕрд▓рдЧ рдкреИрдХреЗрдЬ / рдкрде рдЬреИрд╕реЗ рдореЗрдВ рд▓реЗ рдЬрд╛рдпрд╛ рдЧрдпрд╛ @types/styled-components/native
рдХреИрд╕реЗ рд▓реЛрдЧреЛрдВ рдХреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХреЗ рд╕рд╛рде рд╕рдВрдЧрдд рд╣реЛрдиреА styled-components
; рдЬреЛ рд▓реЛрдЧ react-native
рд╕рдорд░реНрдерди рдЪрд╛рд╣рддреЗ рд╣реИрдВ рд╡реЗ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ import styled from 'styled-components/native'
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░рддреЗ рд╣реИрдВ, рдЖрдкрдХреЛ рд╡реЗрдм рдореЗрдВ import styled from 'styled-components'
рд╕реЗ рд╕рднреА react-native
рдЬрдВрдЧрд▓ рдХреА рд╕рдВрдкреВрд░реНрдгрддрд╛ рдирд╣реАрдВ рдорд┐рд▓рддреА рд╣реИ рдкреНрд░реЛрдЬреЗрдХреНрдЯ, рдЗрд╕рд▓рд┐рдП рд╕рдВрдмрдВрдзрд┐рдд @types/
рдкреИрдХреЗрдЬ рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕реЗ рдЕрд▓рдЧ рд╡реНрдпрд╡рд╣рд╛рд░ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП
рдореИрдВрдиреЗ рд╕рдкреНрддрд╛рд╣рд╛рдВрдд рдореЗрдВ рдЗрд╕реЗ рдФрд░ рдЕрдзрд┐рдХ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рддрд░реАрдХреЗ рд╕реЗ рдареАрдХ рдХрд░рдиреЗ рдкрд░ рдПрдХ рд╕реНрдЯреИрдм рд▓рд┐рдпрд╛, рдЬреЛ рдХрд┐рд╕реА рднреА рд░реЗрдкреЛ рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдЬреЛ рд╡реЗрдм + рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рджреЗрд╢реА рджреЛрдиреЛрдВ рдХреЗ рд▓рд┐рдП рдкреНрд░рдХрд╛рд░ рд▓рдкреЗрдЯрддрд╛ рд╣реИред https://github.com/microsoft/types-publisher/pull/655
рдЗрд╕реЗ рдХреИрд╕реЗ рд╕рдВрдмреЛрдзрд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ ...
рдЧрдВрднреАрд░рддрд╛ рд╕реЗ? рдЕрднреА рднреА рдХреЛрдИ рдлрд┐рдХреНрд╕ рдирд╣реАрдВ рд╣реИ?
@givethemheller @ sanex3339 https://github.com/microsoft/types-publisher/pull/655 рдкрд░ рдХрд╛рд░реНрдпреЛрдВ рдФрд░ рдЪрд░реНрдЪрд╛ рдореЗрдВ рдПрдХ рд╕реБрдзрд╛рд░ рд╣реИ
рдЕрд╕реНрдерд╛рдпреА рд╕рдорд╛рдзрд╛рди рдХреЗ рд░реВрдк рдореЗрдВ, рдмрд╕ @types/react-native
рдХреЛ node_modules рд╕реЗ рд╣рдЯрд╛ рджреЗрдВ:
rm -rf node_modules/@types/react-native
рдФрд░ рдЗрд╕реЗ .yarnclean
@types/react-native
рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ 3.7 рдХреА рд░рд┐рд▓реАрдЬ рдХреЗ рд╕рд╛рде, рдЕрдм рд╣рдо рдЦреБрдж рдХреЛ рдРрд╕реА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдкрд╛рддреЗ рд╣реИрдВ рдЬрд╣рд╛рдВ 3.7 рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЕрдкрдиреА рдкреНрд░рдХрд╛рд░ рдХреА рдкрд░рд┐рднрд╛рд╖рд╛рдУрдВ рдХреЛ рдЕрдкрдЧреНрд░реЗрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ рдкрд╣рд▓реЗ рд╕реЗ рдХрд╛рдо рдХрд░ рд░рд╣реЗ v4.1.8 рдЕрдм TS 3.7 рдХреЗ рд╕рд╛рде рдЕрд╕рдВрдЧрдд рд╣реИ, рд▓реЗрдХрд┐рди TS 3.7 рдХреЗ рд╕рд╛рде рд╕рдВрдЧрдд рдПрдХрдорд╛рддреНрд░ рд╕рдВрд╕реНрдХрд░рдг рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЯреВрдЯ рдЧрдпрд╛ рд╣реИред рдкреНрд░рддреНрдпреЗрдХ рд░рд┐рдПрдХреНрдЯ-рд╡реЗрдм рдбреЗрд╡рд▓рдкрд░ рдХреЗ рд▓рд┐рдП (рдЬреЛ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рд╡рд┐рд╢рд╛рд▓, рднрд╛рд░реА рдмрд╣реБрдордд рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП)ред рдореИрдВ
.yarnclean
рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рд╕рдВрднрд╡рддрдГ рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реИ рдЬреЛ рдпрд╛рд░реНрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рдЬрд┐рд╕рдореЗрдВ рд╕рднреА рд╕реЗ рдХрдо рд╢рд╛рдорд┐рд▓ рд╣реИрдВред рдФрд░ compilerOptions
рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рдирд╛ рдПрдХ рд╕реНрдХреЗрд▓реЗрдмрд▓, рджреАрд░реНрдШрдХрд╛рд▓рд┐рдХ рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рд╣реИред
рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ рдХрд┐ рдпрд╣рд╛рдВ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╕рдорд╛рдзрд╛рди рдХреНрдпрд╛ рд╣реИред рд╕реНрдЯреЙрдкрдЧреИрдк рдХреЗ рд░реВрдк рдореЗрдВ рдореИрдВ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдПрдХ рдЕрд▓рдЧ рд╕рдВрд╕реНрдХрд░рдг рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рдкрдХреНрд╖ рдореЗрдВ рд╣реВрдВ рдЬрд┐рд╕рдореЗрдВ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ react-native
рдЪреАрдЬреЗрдВ рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рд╣реИрдВред
рдПрдХ рдЧреИрд░-рдпрд╛рд░реНрди рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдЖрдк рдЗрд╕реЗ рдЕрдкрдиреА npm рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдЬреЛрдбрд╝рдХрд░ рдХрд╛рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:
"postinstall": "rm -rf node_modules/@types/react-native"
рдПрдирдкреАрдПрдо рдореВрд▓ рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рддреБрд░рдВрдд рдмрд╛рдж рдЙрдиреНрд╣реЗрдВ рд╣рдЯрд╛ рджреЗрдЧрд╛ред рдЕрднреА рднреА рдПрдХ рд╣реИрдХреА рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рдЬреЛ рдХрд┐ рдПрдХ рдореБрджреНрджрд╛ рднреА рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рд▓реЗрдХрд┐рди рдпрд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред
рдпрд╣рд╛рдВ рдЦреБрдж рдХреЛ рднреА рдЬреЛрдбрд╝ рд░рд╣рд╛ рд╣реВрдВред рд╣рдореЗрдВ рдПрдХ рд╕рдорд╛рдзрд╛рди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдмрд╣реБрдд рд╕рд╛рд░реА рдкреЛрд╕реНрдЯ-рдЗрдВрд╕реНрдЯреЙрд▓ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рд╕реЗ рдмреЗрд╣рддрд░...
рдпрд╣ рд╕рдорд╕реНрдпрд╛ рдореВрд▓ рд░реВрдк рд╕реЗ рд╕реНрдЯрд╛рдЗрд▓-рдШрдЯрдХреЛрдВ рдХреЗ рд╕рднреА рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдПрдХ рд╡рд░реНрд╖ рд╕реЗ рдЕрдзрд┐рдХ (!!!) рд╕реЗ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░ рд░рд╣реА рд╣реИред
рдХреНрдпрд╛ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдЗрд╕рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рд╕рдорд╛рдзрд╛рди рд╣реИ (.yarnclean рдХреЗ рд╕рд╛рде рд╣реИрдХреНрд╕ рдХреА рдЧрд┐рдирддреА рдирд╣реАрдВ)? рдХреНрдпрд╛ рдХреЛрдИ рдЕрд╡рд░реЛрдзрдХ рд╣реИрдВ?
рдореБрдЭреЗ рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕реЗ рджреЛ рдкреИрдХреЗрдЬреЛрдВ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ (рдпрд╛ рд╕рдВрднрд╛рд╡рд┐рдд рд░реВрдк рд╕реЗ рддреАрди, рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рдореВрд▓ рдФрд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рджреЛрдиреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рд╛рдорд╛рдиреНрдп рд╕рд╛рдорд╛рди рд╡рд╛рд▓рд╛ рдПрдХ рдЖрдзрд╛рд░, рдПрдХ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЗ рд▓рд┐рдП рдФрд░ рджреВрд╕рд░рд╛ рдЖрд░рдПрди рдХреЗ рд▓рд┐рдП, рдФрд░ рджреЛ рдмрд╛рдж рд╡рд╛рд▓реЗ рдХреЛ рд╕рд╛рдорд╛рдиреНрдп рд╕рд╛рдорд╛рди рдХреЗ рд╕рд╛рде рдкрд╣рд▓реЗ рд╡рд╛рд▓реЗ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ) рдЗрд╕рд╕реЗ рдирд┐рдкрдЯрдиреЗ рдХрд╛ рд╕рдмрд╕реЗ рдЖрд╕рд╛рди рдФрд░ рддреЗрдЬрд╝ рддрд░реАрдХрд╛ рд╣реЛред
рдореИрдВ рдорджрдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реВрдВ, рдЕрдЧрд░ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХреЗрд╡рд▓ рдпреЛрдЧрджрд╛рдирдХрд░реНрддрд╛рдУрдВ рдХреА рдХрдореА рд╣реИ, рддреЛ рдореИрдВ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдХрд┐ рд╕реНрдЯрд╛рдЗрд▓-рдШрдЯрдХреЛрдВ рдФрд░ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рджреЛрдиреЛрдВ рдХрд╛ рдПрдХ рд╕рд╛рде рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЖрд╕рд╛рди рд╣реЛ, рдмрд┐рдирд╛ рд╕рд╛рдорд╛рди рдХреЛ рд╣реИрдХ рдХрд┐рдПред
рдореИрдВ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдХрд┐ рд╕реНрдЯрд╛рдЗрд▓-рдШрдЯрдХреЛрдВ рдФрд░ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рджреЛрдиреЛрдВ рдХрд╛ рдПрдХ рд╕рд╛рде рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЖрд╕рд╛рди рд╣реЛ, рдмрд┐рдирд╛ рд╕рд╛рдорд╛рди рдХреЛ рд╣реИрдХ рдХрд┐рдП
рдЯрдХреНрдХрд░! рдПрдХ рдмреЗрд╣рддрд░ рдкреНрд░рдХрд╛рд░ рдХреА рдкрд░рд┐рднрд╛рд╖рд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП ...
рдореИрдВрдиреЗ рдЕрдкрдиреЗ рдиреЛрдб_рдореЙрдбреНрдпреВрд▓ рд╕реЗ @types/react-native
рд╣рдЯрд╛ рджрд┐рдпрд╛ рдФрд░ рдЕрднреА рднреА рд╡рд╣реА рддреНрд░реБрдЯрд┐ рд╣реЛ рд░рд╣реА рд╣реИред рд╣реИрдХ рдХреЗ рд╕рд╛рде рднреА рдХреНрдпреЛрдВ?
@ArnaudJeannin рдпрджрд┐ рдЖрдкрдиреЗ рдЗрд╕реЗ рд╣рд╛рде рд╕реЗ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рд╣рдЯрд╛ рджрд┐рдпрд╛ рд╣реИ рддреЛ рдпрд╣ рд╣рд░ рдмрд╛рд░ npm i
/ yarn
рдЪрд▓рд╛рдиреЗ рдкрд░ рд╡рд╛рдкрд╕ рдЬреБрдбрд╝ рдЬрд╛рдПрдЧрд╛
рд╡рд┐рд▓реЛрдкрди рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд┐рдП рдЬрд╛рдиреЗ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд▓рдЧрд╛рддрд╛рд░ рдпрд╛ рддреЛ NPM рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЗрд╕реЗ рд╣рдЯрд╛рдиреЗ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП postinstall
рдореЗрд░реА рдкрд┐рдЫрд▓реА рдЯрд┐рдкреНрдкрдгреА рдкреНрд░рддрд┐ рдпрд╛ рдореЗрдВ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд░реВрдк рдореЗрдВ .yarnclean
рдЕрдЧрд░ рдЖрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдпрд╛рд░реНрди рдареАрдХ рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред
рдореИрдВрдиреЗ рдЬреЛ рдХрд┐рдпрд╛ рд╡рд╣ рд╕рднреА рдХреЗ рд▓рд┐рдП рдЙрдкрдпреБрдХреНрдд рдирд╣реАрдВ рд╣реЛрдЧрд╛, рд▓реЗрдХрд┐рди рдореИрдВрдиреЗ рд╕реНрдЯрд╛рдЗрд▓-рдШрдЯрдХреЛрдВ рд╕реЗ рднрд╛рд╡рдирд╛ рдкрд░ рд╕реНрд╡рд┐рдЪ рдХрд░рдХреЗ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ "рд╣рд▓" рдХрд┐рдпрд╛ред рдХрд┐рд╕реА рднреА рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХрд╛ рдореЗрд░рд╛ рдЙрдкрдпреЛрдЧ рдмрд╣реБрдд рд╣реА рдмреБрдирд┐рдпрд╛рджреА рд╣реИ - рдмрд╕ рд╕реАрдПрд╕рдПрд╕ рдХреЗ рд╕рд╛рде рдШрдЯрдХреЛрдВ рдХреЛ рд▓рдкреЗрдЯрдирд╛ рдФрд░ рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ рд╡рд┐рд░рд╛рд╕рдд рдореЗрдВ рдорд┐рд▓рд╛рдирд╛ - рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореБрдЭреЗ рдЖрд╡рд╢реНрдпрдХ рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рд╕реНрдЯрд╛рдЗрд▓-рдШрдЯрдХреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рдорд╛рди рдПрдкреАрдЖрдИ рд╣реИред рдпрд╣ рдПрдХ рдЖрд╕рд╛рди рд╕рдВрдХреНрд░рдордг рдерд╛ред рдореБрдЭреЗ 6 рдорд╣реАрдиреЗ рдмрд╛рдж рдЕрдм рддрдХ рдХреЛрдИ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реБрдИ рд╣реИред рднрд╛рд╡рдирд╛ рдореЗрдВ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд TS рдЯрд╛рдЗрдкрд┐рдВрдЧ рд╢рд╛рдорд┐рд▓ рд╣реИ, рдЗрд╕рд▓рд┐рдП @types
рд╕рд╛рде рдХреЛрдИ рдЖрдЙрдЯ-рдСрдл-рд╕рд┐рдВрдХ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реИред
рдЬреИрд╕рд╛ рдХрд┐ рдКрдкрд░ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рд╕реАрдПрд╕рдПрд╕ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЛ рд╕реНрд╡рд┐рдЪ рдХрд░рдирд╛ рдХрдИ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреБрдХреНрдд рдирд╣реАрдВ рд╣реЛрдЧрд╛, рд▓реЗрдХрд┐рди рдореЗрд░реЗ рд▓рд┐рдП рд╕реНрдЯрд╛рдЗрд▓-рдШрдЯрдХреЛрдВ рдЯреАрдПрд╕ рдореБрджреНрджреЛрдВ рдХреЗ рд╕рд╛рде рд╕рдВрдШрд░реНрд╖ рдХрд░рдиреЗ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рд╕реНрд╡рд┐рдЪ рдХрд░рдирд╛ рдЖрд╕рд╛рди рдерд╛ред рд╡рд╛рдИрдПрдордПрдорд╡реАред
yarn
рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рд╕рд░рд▓ рд╕рдорд╛рдзрд╛рди, рдЬреЛ рдЖрдкрдХреЛ рд╕реНрдЯрд╛рдЗрд▓-рдШрдЯрдХреЛрдВ рдХреЗ рд╡рд░реНрддрдорд╛рди рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рджреЗрдЧрд╛ред рдкреИрдХреЗрдЬ.рдЬреЗрд╕рди рдореЗрдВ:
"resolutions": {
"@types/react-native": "link:./empty-package"
},
рдХреБрдЫ рди рдХрд░реЗрдВ рдкреИрдХреЗрдЬ рд╕реЗрдЯ рдХрд░реЗрдВ рдЬреЛ рдКрдкрд░ рджрд┐рдП рдЧрдП рд╕рдорд╛рдзрд╛рди рдХрд╛ рд▓рдХреНрд╖реНрдп рд╣реИ:
mkdir empty-package
cd empty-pacakge
yarn init -y
touch index.d.ts
рдореЗрд░реЗ рд▓рд┐рдпреЗ рдХрд╛рд░реНрдп рдХрд░рддрд╛ рд╣реИред
@arimah @GabrielDuarteM, рдЖрдк рдЕрдкрдиреЗ downvote рд╡реНрдпрд╛рдЦреНрдпрд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ? рдХреНрдпрд╛ рдЖрдкрдиреЗ рдпрд╣ рдХреЛрд╢рд┐рд╢ рдХреА, рдФрд░ рдкрд╛рдпрд╛ рдХрд┐ рдпрд╣ рдХрд╛рдо рдирд╣реАрдВ рдХрд┐рдпрд╛? рдХреГрдкрдпрд╛ рдЯрд┐рдкреНрдкрдгреА рдХрд░реЗрдВ рддрд╛рдХрд┐ рдореИрдВ рдорджрдж рдХрд░ рд╕рдХреВрдВ рдФрд░ рдпрджрд┐ рдРрд╕рд╛ рд╣реИ рддреЛ рджреВрд╕рд░реЛрдВ рдХреЛ рдлрд╛рдпрджрд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдпрд╣ рдЗрд╕ рдмрд┐рдВрджреБ рдкрд░ рдЙрдкрд▓рдмреНрдз рдПрдХрдорд╛рддреНрд░ рдЕрдиреНрдп рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдмрд╣реБрдд рдХрдо рдЖрдХреНрд░рд╛рдордХ рд▓рдЧрддрд╛ рд╣реИ (рдЯрд╛рдЗрдк рдореЙрдбреНрдпреВрд▓ рдХреЛ рд╣рдЯрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреЛрд╕реНрдЯрдЗрдВрд╕реНрдЯреЙрд▓ рд╕реНрдХреНрд░рд┐рдкреНрдЯ)ред рдпрд╛ рдЕрдЧрд░ рдЗрд╕ рд╕рдорд╛рдзрд╛рди рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдордЬрдмреВрдд рдирдХрд╛рд░рд╛рддреНрдордХ рд╣реИ рдЬреЛ рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ рд╣реИ, рддреЛ рдореИрдВ рдЯрд┐рдкреНрдкрдгреА рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рдирд╛ рдпрд╛ рд╣рдЯрд╛рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред
@jamietre рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛтАЛтАЛрд╣реИ рдХрд┐
@jamietre рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛтАЛтАЛрд╣реИ рдХрд┐
рдпрд╣ рдирд╣реАрдВ рдкрддрд╛ рдерд╛ рдХрд┐ рдХрд╛рдордХрд╛рдЬ рдкрд░ рднрд░реЛрд╕рд╛ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕реБрдзрд╛рд░ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░рддреЗ рд╣реБрдП рдореИрдВ рд╣рдореЗрд╢рд╛ рдЙрдиреНрд╣реЗрдВ рдмрд╣реБрдд рдорджрджрдЧрд╛рд░ рдкрд╛рддрд╛ рд╣реВрдВред рдПрдХ рд╕рд╛рд▓ рд╕реЗ рдЕрдзрд┐рдХ рд╕рдордп рд╕реЗ рдпрд╣ рд╕рдорд╕реНрдпрд╛ рдмрдиреА рд╣реБрдИ рд╣реИред рдФрд░ рдХрд╛рдо рдЕрднреА рднреА рдХрд░рдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИред тАНтЩВ
@jamietre рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╕рд┐рд░реНрдл рдЗрддрдирд╛ рд╣реИ рдХрд┐ рдЖрдкрдиреЗ рдЗрд╕реЗ "рд╕рдорд╛рдзрд╛рди" рдХреЗ рд░реВрдк рдореЗрдВ рддреИрдпрд╛рд░ рдХрд┐рдпрд╛ рд╣реИ, рдЬреЛ рдпрд╣ рдирд╣реАрдВ рд╣реИ, рдФрд░ рдЗрд╕реЗ рдЗрд╕ рддрд░рд╣ рддреИрдпрд╛рд░ рдХрд░рдиреЗ рд╕реЗ рд░рдЦрд░рдЦрд╛рд╡ рдХрд░рдиреЗ рд╡рд╛рд▓реЛрдВ рдХреЛ рдпрд╣ рд╡рд┐рдЪрд╛рд░ рдорд┐рд▓ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЕрднреА рднреА рдПрдХ рд╣рд╛рд╕реНрдпрд╛рд╕реНрдкрдж рдореБрджреНрджрд╛ рдирд╣реАрдВ рд╣реИ рдЬреЛ рдЙрдирдХреЗ рдЕрдзрд┐рдХрд╛рдВрд╢ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░рддрд╛ рд╣реИред
@jamietre рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╕рд┐рд░реНрдл рдЗрддрдирд╛ рд╣реИ рдХрд┐ рдЖрдкрдиреЗ рдЗрд╕реЗ "рд╕рдорд╛рдзрд╛рди" рдХреЗ рд░реВрдк рдореЗрдВ рддреИрдпрд╛рд░ рдХрд┐рдпрд╛ рд╣реИ, рдЬреЛ рдпрд╣ рдирд╣реАрдВ рд╣реИ, рдФрд░ рдЗрд╕реЗ рдЗрд╕ рддрд░рд╣ рддреИрдпрд╛рд░ рдХрд░рдиреЗ рд╕реЗ рд░рдЦрд░рдЦрд╛рд╡ рдХрд░рдиреЗ рд╡рд╛рд▓реЛрдВ рдХреЛ рдпрд╣ рд╡рд┐рдЪрд╛рд░ рдорд┐рд▓ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЕрднреА рднреА рдПрдХ рд╣рд╛рд╕реНрдпрд╛рд╕реНрдкрдж рдореБрджреНрджрд╛ рдирд╣реАрдВ рд╣реИ рдЬреЛ рдЙрдирдХреЗ рдЕрдзрд┐рдХрд╛рдВрд╢ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░рддрд╛ рд╣реИред
"рд╕рдорд╛рдзрд╛рди" рдХреЛ "рд╕рдорд╛рдзрд╛рди" рдореЗрдВ рдмрджрд▓ рджрд┐рдпрд╛ ... рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдореИрдВ рд▓реЛрдЧреЛрдВ рдХреЛ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд╕рд╛рде рд╕реНрдЯрд╛рдЗрд▓ рдШрдЯрдХреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдиреЗ рдореЗрдВ рдорджрдж рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред рдбрд╛рдЙрдирд╡реЛрдЯреНрд╕ рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдпрд╣ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рд╢рдмреНрджрд╛рд░реНрде рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рдиреЗ рдореЗрдВ рдорджрджрдЧрд╛рд░ рдирд╣реАрдВ рд▓рдЧрддрд╛, рд▓реЗрдХрд┐рди рдирд┐рд╢реНрдЪрд┐рдд рд╣реИред
рдРрдкрд╕рдо рд╕реЙрд▓реНрдпреВрд╢рдВрд╕ рдореЗрдВ рднреА рд╣рдореЗрдВ рдпрд╣реА рд╕рдорд╕реНрдпрд╛ рдереА рдФрд░ рд╣рдордиреЗ рдЗрд╕реЗ tsconfig.json рдлрд╝рд╛рдЗрд▓ рдореЗрдВ "skipLibCheck": true,
рдирд┐рдпрдо рдХреЗ рд╕рд╛рде рд╣рд▓ рдХрд┐рдпрд╛ред
@pumanitro рд╕реБрдЭрд╛рдИ рдЧрдИ рдХрдИ рдЕрдиреНрдп рдЪреАрдЬреЛрдВ рдХреА рддрд░рд╣, рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ рдпрд╣ рдХреЛрдИ рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рд╣реИ, рдмрд▓реНрдХрд┐ рдПрдХ рдорд╛рддреНрд░ рд╕рдорд╛рдзрд╛рди рд╣реИред
@SamHH рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рдХреЗ рд▓рд┐рдП рд╣рд▓ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╢рдмреНрдж рдмрджрд▓ рдЧрдпрд╛ред
рдпрд╣ рд╕реАрдЖрд░рдП рдореЗрдВ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд╕рд╛рде рдХреИрд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЖрдк рд╕рд╣реА рд╣реИрдВ рдпрд╣ рдХреЛрдИ рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рд╣реИред рдлрд┐рд░ рднреА, рдпрд╣ рд▓реЛрдЧреЛрдВ рдХреА рдорджрдж рдХрд░ рд╕рдХрддрд╛ рд╣реИред
https://github.com/DefinitelyTyped/DefinitelyTyped/pull/32843#issuecomment -605921101 рд╕реЗ рдореЗрд░реА рдЯрд┐рдкреНрдкрдгреА рдХреЛ рджреЛрдмрд╛рд░рд╛ рдкреЛрд╕реНрдЯ рдХрд░рдирд╛
рд╕рдорд╛рдзрд╛рди рдпрд╣ рд╣реИ рдХрд┐ рдЖрдкрдХреЗ tsconfig.json
рдПрдХ compilerOptions.types
рд╕рд░рдгреА рд╣реЛ рдЬреЛ рдЯрд╛рдЗрдк-рдЪреЗрдХрд┐рдВрдЧ рдХреЗ рджреМрд░рд╛рди рд╣рд░ рдПрдХ @types/*
рдкреИрдХреЗрдЬ рдХреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдкрдврд╝рдиреЗ рд╕реЗ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рд░реЛрдХрддрд╛ рд╣реИред рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗрд╡рд▓ types
рд╕рд░рдгреА рдореЗрдВ рдирд╛рдорд┐рдд рдкреИрдХреЗрдЬреЛрдВ рдХреЗ рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдЖрдпрд╛рдд рдХрд░реЗрдЧрд╛; рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, "types": ["node"]
(рдпрджрд┐ рдЖрдк рдХреА рддрд░рд╣ рдореЙрдбреНрдпреВрд▓ рдореЗрдВ рдирд┐рд░реНрдорд┐рдд рдХрд╛ рдЙрдкрдпреЛрдЧ buffer
рдпрд╛ path
рд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, @types/node
), "types": ["node", "jest"]
(рдпрджрд┐ рдЖрдк ' рдЬреЗрд╕реНрдЯ рдЯреЗрд╕реНрдЯ рдлрд┐рд░ рд╕реЗ рд▓рд┐рдЦрдирд╛); рдпрд╛ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛтАЛтАЛрдХрд┐ рд╕рд┐рд░реНрдл "types": []
рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдХрд┐рд╕реА рднреА рдкреИрдХреЗрдЬ рдХреЛ рдСрдЯреЛ-рд▓реЛрдб рдХрд░рдиреЗ рд╕реЗ рд░реЛрдХрдиреЗ рдХреЗ рд▓рд┐рдП рдЬреЛ рд╕реАрдзреЗ рдЖрдпрд╛рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдпрд╛ /// <reference types="..." />
рдЖрдкрдХреЗ рдХреЛрдб рд╕реЗред
рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдпрд╣ рдирд╣реАрдВ рдХрд╣ рд╕рдХрддрд╛ рдХрд┐ @types/styled-components-native
рд╣реЛрдирд╛ рдмреЗрд╣рддрд░ рд╣реЛрдЧрд╛ рдпрд╛ рдирд╣реАрдВ; рдпрд╣ рдХрдо рд╕реЗ рдХрдо рдЕрд╕рд╛рдорд╛рдиреНрдп рд╣реЛрдЧрд╛, рдФрд░ рд╢рд╛рдпрдж compilerOptions.types
"рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб" рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЛ рд╣рдЯрд╛ рджреЗрдВ, рд▓реЗрдХрд┐рди IMO compilerOptions.types
рдХреЛ рдХреЗрд╡рд▓ рдЙрди рдкреИрдХреЗрдЬреЛрдВ рдкрд░ рд╕реЗрдЯ рдХрд░ рд░рд╣рд╛ рд╣реИ рдЬрд┐рдирдХреЗ рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЛ рдЖрдкрдХреЛ рд╕реНрд╡рддрдГ рд▓реЛрдб рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ ( import
рдмрд┐рдирд╛)
рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ, рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ @types/react-native
рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЛ рд▓реЛрдб рдХрд░ рд░рд╣рд╛ рд╣реИ, рднрд▓реЗ рд╣реА рдЖрдк рдЙрдиреНрд╣реЗрдВ рдкреНрд░рддреНрдпрдХреНрд╖ рдпрд╛ рдЕрдкреНрд░рддреНрдпрдХреНрд╖ рд░реВрдк рд╕реЗ рд╕рдВрджрд░реНрднрд┐рдд рдирд╣реАрдВ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╡реНрдпрд╡рд╣рд╛рд░ рд╕рднреА @types/*
рдкреИрдХреЗрдЬреЛрдВ рдХреЛ рд▓реЛрдб рдХрд░рдирд╛ рд╣реИред compilerOptions.types
рд╕реЗрдЯ рдХрд░рдирд╛ рдЙрд╕ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдХреЛ рд░реЛрдХрддрд╛ рд╣реИ рдФрд░ рдХреЗрд╡рд▓ рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рд╕реВрдЪреАрдмрджреНрдз рдкреИрдХреЗрдЬреЛрдВ рдХреЛ рд▓реЛрдб рдХрд░рддрд╛ рд╣реИ + рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ import
рдкреИрдХреЗрдЬред
рдореБрдЭреЗ рд╡рд┐рд╢реНрд╡рд╛рд╕ рдирд╣реАрдВ рд╣реЛ рд░рд╣рд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЕрднреА рднреА рдПрдХ рдореБрджреНрджрд╛ рд╣реИ! рдкрд┐рдЫрд▓реА рдЧрд░реНрдорд┐рдпреЛрдВ рдореЗрдВ рдЗрд╕ рдореБрджреНрджреЗ рдореЗрдВ рднрд╛рдЧ рдЧрдпрд╛, рдореИрдВрдиреЗ рдЕрднреА рдкреИрдХреЗрдЬ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд┐рдпрд╛ рдХреНрдпреЛрдВрдХрд┐ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рддрдм рд╕реЗ рддрдп рд╣реЛ рдЧрдпрд╛ рд╣реЛрдЧрд╛
@types/styled-components рдХрд╛ рдЕрдиреБрд░рдХреНрд╖рдХ рдХреМрди рд╣реИ? рдХреНрдпреЛрдВрдХрд┐ рд╣рдореЗрдВ рдХрд┐рд╕реА рдирдП рдХреА рдЬрд░реВрд░рдд рд╣реИ
compilerOptions.types
рд╕рд╛рде @Jessidhia рдХреЗ рдкреНрд░рд╕реНрддрд╛рд╡ рдиреЗ рдореЗрд░реЗ рд▓рд┐рдП рдХрд╛рдо рдХрд┐рдпрд╛ред рдЖрдкрдХрд╛ рдмрд╣реБрдд рдмрд╣реБрдд рдзрдиреНрдпрд╡рд╛рдж! рдореИрдВ рдЗрд╕реЗ рд╕рд░реНрд╡реЛрддреНрддрдо рдЕрднреНрдпрд╛рд╕ рдХреЗ рд░реВрдк рдореЗрдВ рднреА рджреЗрдЦрддрд╛ рд╣реВрдВред рдЕрдм рддрдХ рдореБрдЭреЗ рдХреЛрдИ рдиреБрдХрд╕рд╛рди рдирд╣реАрдВ рд╣реБрдЖред рдореИрдВ рд╕реЛрдЪ рд╕рдХрддрд╛ рдерд╛ рдХрд┐ рдпрд╣ рддреЗрдЬрд╝ рднреА рд╣реИред
@sbusch рдиреБрдХрд╕рд╛рди рдпрд╣ рд╣реИ рдХрд┐ рдпрджрд┐ рдЖрдк compilerOptions.types
рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ рддреЛ рдЖрдкрдХреЗ рд╕рднреА рдЯрд╛рдЗрдкрд┐рдВрдЧ рдХреЛ рдпрд╣рд╛рдВ рд╕реВрдЪреАрдмрджреНрдз рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА, рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕ рд╕реВрдЪреА рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдХреБрдЫ рднреА рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдЗрд╕рд▓рд┐рдП, рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд┐рдП рдЧрдП рдкреИрдХреЗрдЬ рдХреЗ рд▓рд┐рдП рдЬреЛ рдЯрд╛рдЗрдкрд┐рдВрдЧ рдкреНрд░рджрд╛рди рдХрд░рддреЗ рд╣реИрдВ, рдЖрдкрдХреЛ рдЗрд╕ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЛ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдкреНрд░рдмрдВрдзрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА
рд╣рд╛рдБ, рд╕рднреА рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЛ рдкреНрд░рдХрд╛рд░реЛрдВ рдореЗрдВ рд╕реВрдЪреАрдмрджреНрдз рдХрд░рдирд╛ рдПрдХ рд╡рд┐рдХрд▓реНрдк рдирд╣реАрдВ рд╣реИред
рдпрджрд┐ рдЖрдк рдореЙрдбреНрдпреВрд▓ рд╕реЗ рдХреБрдЫ рдЖрдпрд╛рдд рдХрд░рддреЗ рд╣реИрдВ рддреЛ рднреА рдЖрдкрдХреЛ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЯрд╛рдЗрдкрд┐рдВрдЧ рдорд┐рд▓рддреА рд╣реИред types
рд╡рд┐рдХрд▓реНрдк рд╡реИрд╢реНрд╡рд┐рдХ рдШреЛрд╖рдгрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдСрдЯреЛ-рдЖрдпрд╛рдд рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЗ рд▓рд┐рдП рд╣реИред рдЗрд╕рдХреА рдмрд╣реБрдд рдмрд╛рд░ рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЙрди рдореЙрдбреНрдпреВрд▓ рдХреЛ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ types
рдЬреЛрдбрд╝рдирд╛ рдмрд╣реБрдд рдмреБрд░рд╛ рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдореИрдВ рдЗрд╕реЗ рдРрд╕реЗ рд╣реА рд╕рдордЭрддрд╛ рд╣реВрдВред рдмрд╣реБрдд рд╕рдЦреНрдд рдЯреАрдПрд╕ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЗ рд╕рд╛рде рд╣рдорд╛рд░рд╛ рдХрд╛рдлреА рдмрдбрд╝рд╛ рдЯреАрдПрд╕ рдХреЛрдбрдмреЗрд╕ рдЕрднреА рднреА types
рд╕рд░рдгреА рдХреЛ []
рдкрд░ рд╕реЗрдЯ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рднреА рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рджреЗрдЦреЗрдВ https://stackoverflow.com/a/59030291
рдиреБрдХрд╕рд╛рди рдпрд╣ рд╣реИ рдХрд┐ рдпрджрд┐ рдЖрдк
compilerOptions.types
рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ рддреЛ рдЖрдкрдХреЗ рд╕рднреА рдЯрд╛рдЗрдкрд┐рдВрдЧ рдХреЛ рдпрд╣рд╛рдВ рд╕реВрдЪреАрдмрджреНрдз рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА, рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕ рд╕реВрдЪреА рдореЗрдВ рдЬреЛ рдХреБрдЫ рднреА рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рд╣реИ рдЙрд╕реЗ рдмрд╛рд╣рд░ рд░рдЦрд╛ рдЬрд╛рдПрдЧрд╛ред рдЗрд╕рд▓рд┐рдП, рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд┐рдП рдЧрдП рдкреИрдХреЗрдЬ рдХреЗ рд▓рд┐рдП рдЬреЛ рдЯрд╛рдЗрдкрд┐рдВрдЧ рдкреНрд░рджрд╛рди рдХрд░рддреЗ рд╣реИрдВ, рдЖрдкрдХреЛ рдЗрд╕ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЛ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдкреНрд░рдмрдВрдзрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА
рдЬреИрд╕рд╛ рдХрд┐ @sbush рдиреЗ рдХрд╣рд╛, рдпрд╣ рд╕рдЪ рдирд╣реАрдВ рд╣реИред рд╡рд╣ рд╡рд┐рдХрд▓реНрдк рдХреЗрд╡рд▓ рд╡реИрд╢реНрд╡рд┐рдХ рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЗ рд▓рд┐рдП рд╣реИ, import
рдПрдб рд▓рд┐рдм рдХреА рдЯрд╛рдЗрдкрд┐рдВрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдмрд┐рдирд╛ рдХрд┐рд╕реА рд╕рдорд╕реНрдпрд╛ рдХреЗ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред @Jessidhia рдХрд╛ рдкреНрд░рд╕реНрддрд╛рд╡ рд╣рд╛рдирд┐рд░рд╣рд┐рдд рд╣реИред
рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдПрдХ рднреА рдкреИрдХреЗрдЬ рдЙрдкрднреЛрдХреНрддрд╛рдУрдВ рдХреЛ рдЙрд╕ рдкрд░рдВрдкрд░рд╛ рдХреЛ рддреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдЬреЛ рдЙрд╕ рдХреНрд╖реЗрддреНрд░ рдХреЛ рдЕрдХреЗрд▓рд╛ рдЫреЛрдбрд╝рдирд╛ рд╣реИред рд╣рд░ рдЪреАрдЬ рдХреА рддрд░рд╣, рдпрд╣ рдХреЛрдИ рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рдмрд▓реНрдХрд┐ рдПрдХ рд╕рдорд╛рдзрд╛рди рд╣реИред
рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдирд╣реАрдВ рд╣реИ рдХрд┐ рдХрд┐рд╕реА рдиреЗ рдкрд╣рд▓реЗ рд╣реА рдорд╛рдорд▓реЗ рдХрд╛ рдЙрддреНрддрд░ рджрд┐рдпрд╛ рд╣реИ рдЬрдм рдЖрдкрдХреЗ рдкрд╛рд╕ рдПрдХ рдореЛрдиреЛ рд░реЗрдкреЛ Lerna + yarn workspaces
(рдмрд╣реБрдд рд╕рд╛рд░реЗ рдЙрддреНрддрд░) рд╣реИрдВред рдЗрд╕ рдорд╛рдорд▓реЗ рдХреЗ рд▓рд┐рдП, рдЖрдк no-hoist
рд╕рдВрдкрддреНрддрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдпрд╛рд░реНрди рд╡реЗрдмрд╕рд╛рдЗрдЯ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ
рдЖрдкрдХреА package.json
рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╡реНрдпрд╡рд╣рд╛рд░ рдореЗрдВ:
"workspaces": {
"packages": ["packages/*"],
"nohoist": ["**/react-native", "**/react-native/**"]
}
ЁЯЩПЁЯП╗ @types/styled-components": "4.1.8"
ЁЯЩПЁЯП╗
рд╕рдорд╛рдзрд╛рди @nahumzs рдХрд╛ рдкреНрд░рд╕реНрддрд╛рд╡ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдпрджрд┐ рдЖрдк рдпрд╛рд░реНрди рдореЛрдиреЛрд░рдкреЛрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рд╣рдо рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рдореВрд▓ рдХреЛ рд╡реИрд╢реНрд╡рд┐рдХ рдиреЛрдб_рдкреИрдХреЗрдЬ рдлрд╝реЛрд▓реНрдбрд░ рдХреЛ рдкреНрд░рджреВрд╖рд┐рдд рдХрд░рдиреЗ рд╕реЗ рд░реЛрдХрддреЗ рд╣реИрдВ, рдбреБрдкреНрд▓рд┐рдХреЗрдЯ рдХреЛ рд░реЛрдХрддреЗ рд╣реИрдВ рдЬреЛ рдмрджрд▓реЗ рдореЗрдВ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЛ рдлреЗрдВрдХрддреЗ рд╣реИрдВред
рдХрд┐рд╕ рдмрд┐рдВрджреБ рдкрд░ рд╣рдо рдХреЗрд╡рд▓ рдпрд╣ рдХрд╣рддреЗ рд╣реИрдВ рдХрд┐ рд░рд┐рдПрдХреНрдЯ рдиреЗрдЯрд┐рд╡ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЕрдзрд┐рдХ рд░рд┐рдПрдХреНрдЯ рд╡реЗрдм рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╣реИрдВ, рдФрд░ рд░рд┐рдПрдХреНрдЯ рдиреЗрдЯрд┐рд╡ рд╕рдорд░реНрдерди рдХреЛ рд╣рдЯрд╛ рджреЗрддреЗ рд╣реИрдВ?
рдХреНрдпрд╛ рдЗрд╕ рдореБрджреНрджреЗ рдкрд░ рдХреЛрдИ рдкреНрд░рдЧрддрд┐ рд╣реБрдИ рд╣реИ? рд╣рдо рд╡рд░реНрддрдорд╛рди рдореЗрдВ @types/styled-components рдХреЗ рд╕рдВрд╕реНрдХрд░рдг 4.1.8 рдкрд░ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рд╣рдо рдХрд┐рд╕реА рд╕рдорд╛рдзрд╛рди рдХреЗ рдмрд┐рдирд╛ рдЕрджреНрдпрддрди рдХрд░рдиреЗ рдореЗрдВ рдЕрд╕рдорд░реНрде рд╣реИрдВ рдпрд╛ рдХрд┐рд╕реА рдХрд╛рд░реНрдп рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рдЬреИрд╕реЗ рдХрд┐ npm рдкреЛрд╕реНрдЯ рдЗрдВрд╕реНрдЯреЙрд▓ рдХрдорд╛рдВрдб рдореЗрдВ node_modules/@types/react-native рдХреЛ рд╣рдЯрд╛рдирд╛ред
рдУрд╣ рдПрдл ** рдХреЗ, рдпрд╣ рдореБрджреНрджрд╛ рдореБрдЭреЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдмрд╣реБрдд рджрд░реНрдж рджреЗрддрд╛ рд╣реИред
рдЕрдм рдореИрдВ рдпрд╣рд╛рдБ рдореЗрдВ рд╡рд░реНрдгрд┐рдд рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░ рд░рд╣рд╛ рд╣реВрдБред рдЗрд╕рд▓рд┐рдП, рдЕрдЧрд░ рдореИрдВ рдирдП рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдЕрдкрдЧреНрд░реЗрдб рдХрд░рддрд╛ рд╣реВрдВ рддреЛ рдореИрдВ @types/[email protected]
рдЙрдкрдпреЛрдЧ рднреА рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ред рдбрдмреНрд▓реНрдпреВрдЯреАрдПрдЪред
рд╡реИрд╕реЗ рднреА, рдпрд╣ https://github.com/DefinitelyTyped/DefinitelyTyped/issues/33015 рдХрд╛ рдбреБрдкреНрд▓рд┐рдХреЗрдЯ рдкреНрд░рддреАрдд рд╣реЛрддрд╛ рд╣реИ
рдРрдкрд╕рдо рд╕реЙрд▓реНрдпреВрд╢рдВрд╕ рдореЗрдВ рднреА рд╣рдореЗрдВ рдпрд╣реА рд╕рдорд╕реНрдпрд╛ рдереА рдФрд░ рд╣рдордиреЗ рдЗрд╕реЗ tsconfig.json рдлрд╝рд╛рдЗрд▓ рдореЗрдВ
"skipLibCheck": true,
рдирд┐рдпрдо рдХреЗ рд╕рд╛рде рд╣рд▓ рдХрд┐рдпрд╛ред
рдорд╛рдорд▓реЗ рдореЗрдВ рдХрд┐рд╕реА рдХреЛ рднреА рдРрд╕рд╛ рд╣реА рд▓рдЧрд╛: рдореИрдВ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП skipLibCheck
рдХреЛ рд╕рдХреНрд╖рдо рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ред рд▓реЗрдХрд┐рди рдореИрдВрдиреЗ рдЕрдм рдЕрдкрдирд╛ рд╡рд┐рдЪрд╛рд░ рдмрджрд▓ рджрд┐рдпрд╛ рд╣реИ рдХрд┐ рд╣рд╛рд▓ рд╣реА рдореЗрдВ рдПрдХ
рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдХреЛрдИ рдмрд╣реБрдд рдЧрдВрджреЗ рд╣реИрдХ рдХреЗ рд╕рд╛рде рдареАрдХ рд╣реЛ, рдЖрдк рдмрд╕ рдЕрдкрдиреА package.json
рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рдЕрдиреБрднрд╛рдЧ рдореЗрдВ рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ:
"postinstall": "rm -rf node_modules/@types/react-native"
рдПрдХ рдЕрдЪреНрдЫрд╛ рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред
OMG, рдпрд╣ рд╕рдорд╕реНрдпрд╛ рдЕрднреА рднреА 5.1.1 . рдХреЗ рд▓рд┐рдП рднреА рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╣реИ
1- рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд░реВрдЯ рдореЗрдВ .yarnclean
рдЬреЛрдбрд╝реЗрдВред
2- рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕рд╛рдордЧреНрд░реА рдбрд╛рд▓реЗрдВ: @types/react-native
ред
рдпрд╣ рдХрдо рд╕реЗ рдХрдо рдпрд╣рд╛рдВ рд╣рд▓ рд╣реЛ рдЧрдпрд╛, рдЬрдмрдХрд┐ рдореИрдВ рдПрдХ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рд╕рдорд╛рдзрд╛рди рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░рддрд╛ рд╣реВрдВред
рдпрд╣ рдЕрдм 1.5 рд╕рд╛рд▓ рд╕реЗ рдЕрдзрд┐рдХ рд╕рдордп рд╕реЗ рдЪрд▓ рд░рд╣рд╛ рд╣реИред рд╡реИрд╕реЗ рднреА, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореЗрд░реА рд╕рдорд╕реНрдпрд╛ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИ рдФрд░ рдореБрдЭреЗ рдмрд╣реБрдд рдЕрдзрд┐рдХ "рдбреБрдкреНрд▓рд┐рдХреЗрдЯ рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛" рддреНрд░реБрдЯрд┐рдпрд╛рдВ рдорд┐рд▓ рд░рд╣реА рд╣реИрдВред рдХреБрд▓ 36.
tsconfig.json
{
"compilerOptions": {
"allowJs": true,
"baseUrl": ".",
"esModuleInterop": true,
"isolatedModules": true,
"jsx": "react",
"module": "CommonJS",
"moduleResolution": "Node",
"noEmit": true,
"sourceMap": true,
"target": "ES6"
},
"include": [
"src/**/*"
],
}
tsc
рд╕рд╛рде рд╕рдВрдХрд▓рди рдХреЗ рдкрд░рд┐рдгрд╛рдо:
рдХреБрд▓: 38 рддреНрд░реБрдЯрд┐рдпрд╛рдБред рдЙрдирдореЗрдВ рд╕реЗ рдХреЗрд╡рд▓ 2 рдореЗрд░реЗ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╕реНрд░реЛрдд src/**.*
рдлрд╛рдЗрд▓реЛрдВ рд╕реЗ рд╣реИрдВред рдЕрдиреНрдп 36 рддреНрд░реБрдЯрд┐рдпрд╛рдВ .d.ts
рд╕рдВрдШрд░реНрд╖реЛрдВ рд╕реЗ рд╣реИрдВ рдЬреЛ @types/styled-components
ред
рдиреЛрдЯ: рдпрджрд┐ рдореИрдВ "skipLibCheck": true
рдзреНрд╡рдЬ рдЬреЛрдбрд╝рддрд╛ рд╣реВрдВ, рддреЛ рддреНрд░реБрдЯрд┐рдпрд╛рдВ рджреВрд░ рд╣реЛ рдЬрд╛рддреА рд╣реИрдВред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдЕрдЧрд░ рдореИрдВ @types/styled-components
рд╣рдЯрд╛ рджреЗрддрд╛ рд╣реВрдВ, рддреЛ рддреНрд░реБрдЯрд┐рдпрд╛рдВ рднреА рджреВрд░ рд╣реЛ рдЬрд╛рддреА рд╣реИрдВред
рдореИрдВ рдпрд╣рд╛рдВ рдкреВрд░рд╛ рд▓реЙрдЧ рдкреЛрд╕реНрдЯ рдирд╣реАрдВ рдХрд░реВрдВрдЧрд╛, рд▓реЗрдХрд┐рди рдпрд╣рд╛рдВ рдХреБрдЫ рдЙрджрд╛рд╣рд░рдг рджрд┐рдП рдЧрдП рд╣реИрдВред
error TS2300: Duplicate identifier 'AbortController'.
../../../AppData/Roaming/npm/node_modules/typescript/lib/lib.dom.d.ts:1939:11
../../../AppData/Roaming/npm/node_modules/typescript/lib/lib.dom.d.ts:1950:13
node_modules/@types/react-native/globals.d.ts:363:15
error TS2300: Duplicate identifier 'AbortSignal'.
../../../AppData/Roaming/npm/node_modules/typescript/lib/lib.dom.d.ts:1960:11
node_modules/@types/react-native/globals.d.ts:350:15
../../../AppData/Roaming/npm/node_modules/typescript/lib/lib.dom.d.ts:1972:13
error TS2300: Duplicate identifier 'FormData'.
../../../AppData/Roaming/npm/node_modules/typescript/lib/lib.dom.d.ts:5548:11
node_modules/@types/react-native/globals.d.ts:40:15
../../../AppData/Roaming/npm/node_modules/typescript/lib/lib.dom.d.ts:5558:13
error TS2300: Duplicate identifier 'URL'.
error TS2300: Duplicate identifier 'URLSearchParams'.
error TS2300: Duplicate identifier 'RequestInfo'.
error TS2300: Duplicate identifier 'XMLHttpRequestResponseType'.
error TS2717: Subsequent property declarations must have the same type. Property 'body'
must be of type 'string | ArrayBuffer | ArrayBufferView | Blob | FormData | URLSearchParams | ReadableStream<Uint8Array> | null | undefined',
but here has type 'string | ArrayBuffer | DataView | Int8Array | Uint8Array | Uint8ClampedArray | Int16Array | ... 8 more ... | undefined'.
error TS2717: Subsequent property declarations must have the same type. Property 'signal' must be of type 'AbortSignal | null | undefined', but here has type 'AbortSignal | undefined'.
error TS2300: Duplicate identifier 'RequestInfo'.
рдЗрд╕ рдмрд┐рдВрджреБ рдкрд░ рдореИрдВ рдЬреЛ рд╕рдорд╛рдзрд╛рди рдЕрдкрдирд╛ рд░рд╣рд╛ рд╣реВрдВ, рд╡рд╣ рд╣реИ @types/styled-components
рдХреЛ рд╣рдЯрд╛рдирд╛ рдФрд░ рдЕрдкрдиреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ (рдЬреЛ рдПрдХ рд░рд┐рдПрдХреНрдЯ рд╡реЗрдм рдРрдк рд╣реИ) рдХреЗ рд╕рд╛рде рдЖрдЧреЗ рдмрдврд╝рдирд╛ рд╣реИред
рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА
рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рд╕реЗрдЯ рдХрдВрдкрд╛рдЗрд▓рд░Options.types рджреНрд╡рд╛рд░рд╛ рддрдп рдХрд┐рдпрд╛ рдЧрдпрд╛