我如何定义一个接受对象的部分或全部属性的类型?我知道我可以将每个属性标记为可选的,但是有没有办法让所有的属性都是可选的?
const defaults = {
host: 'localhost',
distDir: 'dist',
entrypoint: '__app.html',
app: `build/bundle.js`,
spaPort: "5000",
ssrPort: "5005",
serveSpa: false,
serveSsr: false,
}
/**
* @param {defaults} options
*/
function merge(options = {}){
const allOptions = {...defaults, ...options)
}
上面的代码显示一个警告为 {}
不满足 defaults
. 我可以定义param _options
接受任何子集的 defaults
?
解决了
/** @param {Partial<defaults>} options */