reactjs - Flow.js 中的 SVG 类型支持?
问题描述
我查看了各种github 线程,似乎 SVG 支持没有在 Flow.js 的当前版本中合并/提供(我正在使用 VS Code 扩展vscode-flow-ide
)。我正在尝试使用 SVG refs,现在不得不混合使用不太具体的类型 ( Element
) 并// $FlowFixMe
解决这些问题 - 从更广泛的类型安全角度来看,这并不理想。
有人解决了这个问题吗?我/flow/lib/dom.js
目前正在使用,但它缺少这些类型。
解决方案
在正式包含之前的临时解决方案......
对于缺少的类型,请为您打算使用的属性子集实现您自己的类型。
例如,我正在处理 SVG,所以在一个文件中(以DOM 类型SVGElement.js.flow
命名):
type SVGElement = HTMLElement &
{
fonts: [],
fillOpacity: number
//...
//In reality, SVGElement has many more properties, but you can include
//only those you will use and which thus require type-safety.
//You can add whatever you need, incrementally, as time passes.
}
只输入方法和属性的子集比实现整个类型更容易。
允许从存在于的&
继承;见交叉点类型。HTMLElement
/flow/lib/dom.js
推荐阅读
- sql-server - 如何从 10 到 70 的系统小时和分钟中进行选择
- html - 使用css在div底部的Eclipse形状
- css - 如何将引导程序中的下拉切换移动到最右边?
- ruby-on-rails - 如何在另一个模型中记录一个模型?
- java - @DataJpaTest 无法识别嵌入式 id 中的非空限制
- python-2.7 - 使用 Python 的 Google Dataflow 无法安装工作流:退出状态 1
- php - PHP:从字符串中提取特定值
- python - 如何使用 SMTP-lib 通过 gmail 发送电子邮件而不将其作为密件抄送?
- javascript - 收到 fcm 推送通知后更新页面上的视图并且我在同一页面上
- ios - 如何修复“无法将'__NSCFNumber'(0x116e337d8)类型的值转换为'NSDictionary'(0x116e34818)”的错误。