How to check TypeScript in project folders?
$ yarn tsc
Remember to exclude node_modules folders by configuring
{ "compilerOptions": { ... "skipLibCheck": true, }, ... }
Could not find a declaration file for module ‘third-party-library-name’. ‘third-party-library-name.js’ has an ‘any’ type.
- Create “types\third-party-library-name\index.d.ts” file
declare module 'third-party-library-name';
- Edit tsconfig.json
"compilerOptions": { ... "typeRoots": ["./types", "node_modules/@types"] }, "exclude": [ ... "types" ]
How to define type for react-native style?
- Use StyleProp<ViewStyle>, StyleProp<TextStyle>, StyleProp<ImageStyle>
import React from 'react'; import { View, StyleProp, ViewStyle } from 'react-native'; interface Props { style: StyleProp<ViewStyle>; } const Empty = ({ style }: Props) => { return <View style={style} />; }; export default Empty;
How to define type for react-native children prop?
... const MyComponent: React.FC = ({ children }) => { return <StyledText>{children}</StyledText>; }; export default MyComponent;
How to define type for styled-components?
interface StyledProps { readonly isAvailable: boolean; } const StyledContainer = styled(Card).attrs(() => ({}))<StyledProps>` border-radius: 6px; padding: 10px 10px; border-bottom-width: 4px; border-bottom-color: ${(props) => props.isAvailable ? '#c0e43e' : '#be1e2b'}; background-color: #f9f9fc; `;
Leave a Reply