-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
CRNA (create-react-native-app) module resolve & eslint rules check #32
Comments
当从 CRNA detach 之后,
|
expo 貌似现在都还没增加对wechat的快速集成吧。 |
@meyer-net expo 感觉就是个试验品,用来引导入门的。但是对于真实项目,感觉没什么卵用。我完全放弃那个东西了,还是需要 detach。不要很多东西都没有。比如 expo 官网好像自己都说不支持蓝牙什么的。 |
我也感觉如此,国内的奇葩需求多。要接入各种包,expo不灵活的话,很多事就不好做了。不过他也带来了很多便捷性。小程序原理类似。。。 你们目前对rn的需求如何?现有从业人员转,还是社招。 |
Maybe this is the solution, but I don't understand a bit :) |
me neither :) |
环境
expo: 25.0.0
react: 16.2.0
react-natice: 0.52.0
注意本文只针对 create-react-native-app 初始化的项目。
** #其他情况下,本文可能只能用作参考。**
场景
react-native 目前官方默认采用与 Expo 相结合的形式来构建项目。
但是关于 module resolve 这一块,一直没有找到详细的文档说明。
网上千奇百怪的文章一大堆,解决方式也是五花八门。
主要在于项目稍微复杂点的情况下,没人希望用相对路径的形式去引入其他文件。
如下面的例子,相对路径很难看出到底是从哪个目录引入的某个文件。
相比较而言,依托于项目root 目录的绝对路径就简单明了的多。
解决办法
在既保证绝对路径的引入方式的同时,还加入 eslint 进行规范性检测。
首先,用 create-react-native-app 初始化项目。
安装以下几个 package
package.json
配置
.babelrc
配置
.eslintrc.js
题后
以上配置,包含了省略 .js 后缀名的效果。
最后记得用
--reset-cache
来运行The text was updated successfully, but these errors were encountered: