我正在使用@reduxjs/toolkit并想要创建一个易于扩展的函数,该函数使用默认的减速器创建一个切片。我现在的实现可以工作,但不是强类型的。如何创建一个函数,以便切片的操作类型不仅包含默认的减速器,还包含传入的减速器?我尝试过使用推理类型,但无法使其工作。
任何指导将不胜感激。谢谢。
最小示例:在common.ts文件中(其中逻辑可以在切片之间共享)
export interface StoreState<T> {
data: T
status: 'succeeded' | 'failed' | 'idle'
error: string | null
}
// create a slice given a name and make it possible to extend reducers so they include more than just reset and updateStatus
export const createStoreSlice = <T>(props: {
sliceName: string
defaultState: T
reducers?: SliceCaseReducers<StoreState<T>> // <-- want to infer this in slices/<sliceName>.ts
}) => {
const { sliceName, reducers, defaultState } = props
const initialState: …Run Code Online (Sandbox Code Playgroud) 我有一个 JSON 文件,我想从中获取值并显示。我尝试使用三元运算符,但由于我有多个变量,因此似乎无法获得我想要的输出。这是我尝试过的:
//If there's a word, display its character / reading. Otherwise, just display the reading
return `${json.data[0].word} ? ${json.data[0].word (${json.data[0].reading}) : ${json.data[0].reading}`
Run Code Online (Sandbox Code Playgroud)
这仅输出实际字符串,但如果 json.data[0].word 未定义,则输出未定义。我只想在这种情况下显示读数。
我认为标题需要一些解释.我不想让我的程序将数字分成更小的位.
例如,它会将756分为700,50和6. 9123将是9000,100,20和3.我有什么方法可以为任何合理大小的数字执行此操作?