我希望能够强制 objValidator 与它验证的 obj 具有相同的键。这在 TypeScript 中可能吗?关于如何实现下面这样的东西的任何想法?主要是obj和objValidator必须有相同的key,但是key的值不同。
如果我的 objValidator 没有与 obj 完全相同的键,我希望能够收到警告。
interface obj {
alpha: number
beta: string
}
interface objValidator {
alpha: {
message: string
valid(ALPHA'S TYPE): boolean
}
beta: {
message: string
valid(BETA'S TYPE): boolean
}
}
Run Code Online (Sandbox Code Playgroud) 我有一个函数,它接受一个对象并将其与另一个对象合并。我希望能够有一个通用的 T 来表示正在接受的对象,因为 Typescript 知道输出对象包含相同的键,但也有新的键。
export interface ObjFactory<T> {
someNewProp: string
otherNewProp: string
...T
}
export interface InputObject {
inputProp: string
}
Run Code Online (Sandbox Code Playgroud)
那么输出对象将表示为
{
someNewProp: string
otherNewProp: string
inputProp: string
}
Run Code Online (Sandbox Code Playgroud)
有没有办法实现类似的目标?
为了节省云中的空间,您将如何使用 activestorage 调整和压缩图像的大小?
我正在创建一个扩展 React 组件的抽象类,我希望能够设置一些默认的道具,但也让扩展抽象类的组件提供自己的道具。
interface Props {
someProps: boolean
}
abstract class AbstractPureForm<P, S> extends React.Component<Props & P, S> {
...
}
Run Code Online (Sandbox Code Playgroud)
如何使用:
class Other extends AbstractPureForm<{ newProps: string}, {}> {
...
}
Run Code Online (Sandbox Code Playgroud)
现在这个设置给了我错误:
does not exist on type '(Props & P)["..."]'
Run Code Online (Sandbox Code Playgroud)