将Flowtype添加到现有的大型项目中是否可行?
我添加/* @flow weak */到一个.js文件中,然后运行flow check并突出显示大量函数调用全局定义的库,因为它不知道它们是什么.所以我更新了我的.flowconfig文件,如下所示:
[ignore]
node_modules/
bower_components/
typings/
[include]
twig/
[libs]
bower_components/timezone-js/src/date.js
bower_components/jquery/dist/jquery.js
bower_components/jquery-migrate/jquery-migrate.js
bower_components/jquery-ui/jquery-ui.js
bower_components/jqueryui-touch-punch/jquery.ui.touch-punch.js
bower_components/jquery-cookie/jquery.cookie.js
bower_components/jquery.expander/jquery.expander.js
bower_components/jquery.transit/jquery.transit.js
www/js/select2.js
bower_components/fancybox/source/jquery.fancybox.pack.js
bower_components/lodash/lodash.js
bower_components/underscore.string/lib/underscore.string.js
bower_components/json2/json2.js
bower_components/jquery-validation/dist/jquery.validate.js
bower_components/jquery-file-upload/js/jquery.iframe-transport.js
bower_components/jquery-file-upload/js/jquery.fileupload.js
bower_components/DataTables/media/js/jquery.dataTables.js
bower_components/jquery.taps/jquery.taps.js
bower_components/file-saver.js/FileSaver.js
bower_components/react/react.js
bower_components/react/react-dom.js
bower_components/react/react-dom-server.js
node_modules/babel-core/external-helpers.js
node_modules/babel-core/browser-polyfill.js
... more libs ...
[options]
munge_underscores=true
Run Code Online (Sandbox Code Playgroud)
现在,当我跑步时,它就会耗尽内存flow check.
那么,那么呢?我的项目是否太大而无法使用流量?
Mar*_*lli 13
路径.flowconfig是绝对路径上的正则表达式.所以,要忽略下面的一切node_modules,bower_components你会使用这样的东西:
[ignore]
.*/node_modules/.*
.*/bower_components/.*
Run Code Online (Sandbox Code Playgroud)
该[libs]部分包含Flow 声明(接口文件)的路径,您可以在其中定义应用程序中全局变量的类型.您可以将其指向一个保存所有接口文件的目录:
[libs]
.*/lib/interfaces/.*
Run Code Online (Sandbox Code Playgroud)
例如,对于jQuery,您可以使用以下声明:
declare module "jQuery" {
declare function $(element: any): any;
}
Run Code Online (Sandbox Code Playgroud)
请注意,我们使用了any类型,它有效地关闭了此参数或返回类型的类型检查.
另请参阅文档中有关第三方集成的部分.
| 归档时间: |
|
| 查看次数: |
4181 次 |
| 最近记录: |