在不另外买一台 macbook 的情况下,如何借助 expo 以在 windows 连接 ios 设备进行调试
直接在已有项目导入 expo 可能会遇到 NativeModule cannot be null 问题,极难解决,故新开项目作测试环境为宜
yarn global add expo-cli
expo init test
编辑 babel.config.js 以支持 @ 或其它别名
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16module.exports = function (api) {
api.cache(true);
return {
presets: ["babel-preset-expo"],
plugins: [
[
"module-resolver",
{
alias: {
"@": "./app",
},
},
],
],
};
};编辑 tsconfig.json 以支持 @ 或其它别名
1
2
3
4
5
6
7
8
9
10{
"extends": "expo/tsconfig.base",
"compilerOptions": {
"strict": true,
"baseUrl": "./",
"paths": {
"@/*": ["app/*"]
}
}
}导入原项目可能存在的 prettierrc 配置等与业务无关的通用配置
直接导入业务配置有可能报错,建议一步一步进行
导入原项目的静态资源、全局 ts 类型定义等不依赖第三方库的文件
先执行
expo start -c
并在模拟器或真机上运行,以检测此时 expo 是否能够正常运行若能够正常运行,则及时
git commit
保存版本,以便于回退导入待测试的组件及其所依赖的组件,并在 App.tsx 中连接该组件
yarn add 上述组件所需要的包
运行,若失败则回到步骤 7 重新检测,逐一排查
通过以上方案,即可省下一台 macbook 的钱
不过 ios 设备还是该有(
感谢阅读