我已经使用expo init
模板从tabs
开始了一个新的React Native项目;然后按照https://flow.org/en/docs/install/上的说明启动并运行Flow,包括yarn run flow init
。
当我第一次运行yarn run flow
时,我收到VS Code警报,提示服务器版本错误,而其下的另一则警报则提示服务器已停止。当我输入这些句子时,这两个警报消失并一次又一次地出现。
这是一件奇怪的事。这是我的.flowconfig文件。
[ignore]
[include]
[libs]
[lints]
[options]
[strict]
最后没有版本号,什么都没有。
当我再次运行yarn run flow
时,它没有任何错误,虽然这是有道理的,但也很好,因为我的src
文件夹为空。
警报为我提供了restart client
或restart
的选项。让我们看看:
重新启动客户端运行yarn run flow
:启动一个新服务器,该服务器在VS代码中给出相同的警报,它是错误的版本,该警报消失并一次又一次地出现。
当我单击“重新启动”而不是“重新启动客户端”时,会发生同样的事情
我首先使用流(首先,在我自己使用流之前)从makeitopen.com导入一些F8代码。我将F8存储库中的[F8Stylesheet.js][1]
复制到我的src
文件夹中。红线出现在类型注释下,表示类型只能在ts文件(我已经安装了Flow语言支持)扩展名中使用。
运行yarn run flow
时出现188个错误!我只是从F8存储库中复制了这个文件,错误来自node_modules/react-native/Libraries/Components/Switch/SwitchNativeComponent.js
之类的文件,直到我粘贴到这个文件中时,这些文件才出现问题。
这是我的package.json文件:
{
"main": "node_modules/expo/AppEntry.js",
"scripts": {
"start": "expo start",
"android": "expo start --android",
"ios": "expo start --ios",
"eject": "expo eject",
"test": "node ./node_modules/jest/bin/jest.js --watchAll",
"build": "babel src/ -d lib/",
"prepublish": "yarn run build"
},
"jest": {
"preset": "jest-expo"
},
"dependencies": {
"@expo/samples": "2.1.1",
"expo": "^32.0.0",
"react": "16.5.0",
"react-native": "https://github.com/expo/react-native/archive/sdk-32.0.0.tar.gz",
"react-navigation": "^3.0.9"
},
"devDependencies": {
"babel-cli": "^6.26.0",
"babel-preset-expo": "^5.0.0",
"babel-preset-flow": "^6.23.0",
"flow-bin": "^0.95.1",
"jest-expo": "^32.0.0"
},
"private": true
}
任何地方都有帮助吗?谢谢。