WebStorm 中的 Redux 工具包操作参数
Redux-toolkit action arguments in WebStorm
我开始使用 redux 工具包,但是当我尝试发送带有参数的操作时,我收到来自 IDE 的警告:
“参数类型 {...} 不可分配给参数类型 {payload:{...}}”
或“参数数量无效,应为 2”
我猜它认为状态应该是第一个参数。
有什么办法可以纠正这个问题吗?
编辑:
我找到了针对此特定问题的临时解决方案。
基本上,我所做的是将这些操作移出文件。
如果我之前有:
// reducer.js
const state = createSlice({
// ...
reducers: {
handleNumber(state, action){}
}
})
export const { handleNumber } = state.actions
export default state.reduer
现在我有:
// reducer.js
export const state = createSlice({
// ...
reducers: {
handleNumber(state, action){}
}
})
export default state.reducer
// actions.js
import { state } from './reducer'
export const { handleNumber } = state.actions
正如评论中所说。如果这些名称在同一个文件中,Webstorm 似乎会进行模式匹配。但如果它们在单独的文件中,它会查看打字稿定义。
但它引发了另一个问题,现在当我按住 Ctrl 并单击 actions.js
中的函数名称时,它不会转到函数,而是导航到类型声明。
RTK co-maintainer 这里。这看起来很好奇,应该绝对有效。
我想更深入地研究一下。您能否创建一个包含此问题的复制存储库并将其 post 发送到我们的 github 问题跟踪器?
我遇到过类似的问题,我不确定是什么导致了这个问题,但我发现 removing/renaming 您的(隐藏).idea
文件夹很有用。之后重新启动 Webstorm,它应该会生成一个新的 .idea
文件夹。
所以问题似乎是 Webstorm IDEA 默认设置中的某些东西导致了这个问题。如果您不确定是否要保留某些设置,请务必先重命名 .idea 文件夹。
希望这有效!
我遇到了同样的问题,但是删除了 .idea 并重新启动了 ide。
我开始使用 redux 工具包,但是当我尝试发送带有参数的操作时,我收到来自 IDE 的警告:
“参数类型 {...} 不可分配给参数类型 {payload:{...}}”
或“参数数量无效,应为 2”
我猜它认为状态应该是第一个参数。
有什么办法可以纠正这个问题吗?
编辑: 我找到了针对此特定问题的临时解决方案。 基本上,我所做的是将这些操作移出文件。
如果我之前有:
// reducer.js
const state = createSlice({
// ...
reducers: {
handleNumber(state, action){}
}
})
export const { handleNumber } = state.actions
export default state.reduer
现在我有:
// reducer.js
export const state = createSlice({
// ...
reducers: {
handleNumber(state, action){}
}
})
export default state.reducer
// actions.js
import { state } from './reducer'
export const { handleNumber } = state.actions
正如评论中所说。如果这些名称在同一个文件中,Webstorm 似乎会进行模式匹配。但如果它们在单独的文件中,它会查看打字稿定义。
但它引发了另一个问题,现在当我按住 Ctrl 并单击 actions.js
中的函数名称时,它不会转到函数,而是导航到类型声明。
RTK co-maintainer 这里。这看起来很好奇,应该绝对有效。 我想更深入地研究一下。您能否创建一个包含此问题的复制存储库并将其 post 发送到我们的 github 问题跟踪器?
我遇到过类似的问题,我不确定是什么导致了这个问题,但我发现 removing/renaming 您的(隐藏).idea
文件夹很有用。之后重新启动 Webstorm,它应该会生成一个新的 .idea
文件夹。
所以问题似乎是 Webstorm IDEA 默认设置中的某些东西导致了这个问题。如果您不确定是否要保留某些设置,请务必先重命名 .idea 文件夹。
希望这有效!
我遇到了同样的问题,但是删除了 .idea 并重新启动了 ide。