javascript - 使用 TypeScript 检查 Immutable.js Record.set 类型

标签 javascript typescript redux immutable.js

我使用 Immutable.js 和 TypeScript 来构建 Redux 应用程序。

本质上,我的州看起来像

const defaultState = {
  booleanValue: true,
  numberValue: 0,
}

const StateRecord = Immutable.Record(defaultState)

class StateClass extends StateRecord {
  booleanValue: boolean
  numberValue: number
}

const STATE = new StateClass()

(此设置启用对诸如 STATE.booleanValue === 'hi' 之类的表达式的编译时类型检查)

是否有任何方法可以启用 set 的编译时类型检查,例如 STATE.set('booleanValue', 'hi')? (我希望编译器发出警告,指出 'booleanValue' 无法设置为 'hi'。)

或者,是否有替代设置可以使 Immutable.js 和 TypeScript 在获取和设置时一起工作?

最佳答案

is there alternative setup to make Immutable.js and TypeScript work together both when getting and setting

如果没有将 StateRecord 包装在辅助函数中(基本上是向其抛出更多需要复制并保持同步的代码)。简而言之,不。

关于javascript - 使用 TypeScript 检查 Immutable.js Record.set 类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37426610/

相关文章:

javascript - 在javascript中计算iso时间格式的时差?

javascript - 执行 Action 时 redux 出错 : Uncaught type error: cannot read property 'type' of undefined

javascript - 仅当状态发生变化时才触发操作?

javascript - 缩小浏览器后响应式设计中断

javascript - setTimeout() 语法?

javascript - 尝试 ES6 样式导入给出 'Cannot use import statement outside a module'

javascript - Rails with Bootstrap - 日期选择器

javascript - 用输入字段 Javascript/Angular2 替换某些单词

Angular Jasmine 测试超时

javascript - 使用 Redux 为组件分配唯一 ID