Quantcast
Channel: Active questions tagged react-native+typescript - Stack Overflow
Viewing all articles
Browse latest Browse all 6287

React Native with TS relative path not working

$
0
0

I am trying to use relative path using babel-plugin-module-resolver, but no matter what I make, it doesn't work. I've read the React Native docs about it, and the babel lib docs too, but the metro bundler is unable to resolve the module. Also I'm using typescript.

Here is my config files:

tsconfig.json

{"compilerOptions": {"target": "esnext","module": "commonjs","lib": ["es2017"],"allowJs": true,"jsx": "react-native","noEmit": true,"isolatedModules": true,"strict": true,"moduleResolution": "node","baseUrl": "./src","paths": {"@/*": ["./src/*"]    },"allowSyntheticDefaultImports": true,"esModuleInterop": true,"skipLibCheck": false,"resolveJsonModule": true  },"exclude": ["node_modules", "babel.config.js", "metro.config.js", "jest.config.js"  ]}

babel.config.js

module.exports = {  presets: ['module:metro-react-native-babel-preset'],  plugins: [    ['module-resolver',      {        root: ['./'],        extensions: ['.ios.js', '.android.js', '.ts', '.tsx', '.json'],        alias: {'@/*': './src/*',        },      },    ],  ],};

package.json

{"name": "myapp","version": "0.0.1","private": true,"scripts": {"android": "react-native run-android","ios": "react-native run-ios","start": "react-native start","test": "jest --watch --onlyChanged","lint": "eslint . --ext .js,.jsx,.ts,.tsx --fix"  },"dependencies": {"@react-native-community/async-storage": "^1.12.1","@react-navigation/native": "^6.0.6","@react-navigation/native-stack": "^6.2.5","@types/styled-components-react-native": "^5.1.3","axios": "^0.25.0","formik": "^2.2.9","react": "16.14.0","react-dom": "^17.0.2","react-native": "0.66.4","react-native-safe-area-context": "^3.3.2","react-native-screens": "^3.10.2","react-native-svg": "^12.1.1","styled-components": "^5.3.3","yup": "^0.32.11"  },"devDependencies": {"@babel/core": "^7.12.9","@babel/runtime": "^7.12.5","@react-native-community/eslint-config": "^2.0.0","@types/axios": "^0.14.0","@types/enzyme": "^3.10.11","@types/jest": "^26.0.23","@types/react-native": "^0.66.4","@types/react-test-renderer": "^17.0.1","@typescript-eslint/eslint-plugin": "^5.7.0","@typescript-eslint/parser": "^5.7.0","babel-eslint": "^10.1.0","babel-jest": "^26.6.3","babel-plugin-module-resolver": "^4.1.0","enzyme": "^3.11.0","enzyme-adapter-react-16": "^1.15.6","eslint": "^7.14.0","eslint-config-airbnb": "^19.0.4","eslint-config-prettier": "^8.3.0","eslint-plugin-import": "^2.25.4","eslint-plugin-jsx-a11y": "^6.5.1","eslint-plugin-module-resolver": "^1.4.0","eslint-plugin-react": "^7.28.0","eslint-plugin-react-hooks": "^4.3.0","jest": "^26.6.3","jest-environment-enzyme": "^7.1.2","jest-enzyme": "^7.1.2","metro-react-native-babel-preset": "^0.66.2","react-test-renderer": "17.0.2","typescript": "^4.4.4"  },"resolutions": {"@types/react": "^17"  },"jest": {"preset": "react-native","moduleFileExtensions": ["ts","tsx","js","jsx","json","node"    ]  }}

PS: I've read something about using package.json file only with name attribute, but I don't like this solution because if I want to use a third part lib I have to add to this new package.json file.

PS2: I'm using Windows.


Viewing all articles
Browse latest Browse all 6287

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>