gpt4 book ai didi

javascript - Typescript - 将接口(interface)文字传递给函数参数

转载 作者:搜寻专家 更新时间:2023-10-30 21:08:50 24 4
gpt4 key购买 nike

我想使用一个接口(interface)来设置数据类型,然后在函数中调用它们,同时设置一个默认值,如果它们没有通过。

我在函数中的 canvas 之后收到错误 ',' expected.。不能这样称呼吗?

// Options
interface options {
canvas?: {
width: number;
height: number;
bgColor: string;
};
brushes?: {
sizeSm: number;
sizeLg: number;
};
}

function initialize(options {canvas.width = 700, brushes.sizeSm = 20}) {
// Do stuff
}

// Call function
initialize({
canvas: {
width: 820,
height: 450,
bgColor: '#fff'
},
brushes: {
sizeSm: 10,
sizeLg: 20
},
});

最佳答案

这应该有效

interface options {
canvas?: {
width: number;
height?: number;
bgColor?: string;
};
brushes?: {
sizeSm: number;
sizeLg?: number;
};
}

function initialize(opts: options = {canvas : { width : 700}, brushes: {sizeSm : 20}} ) {
//function initialize(options {canvas.width = 700, brushes.sizeSm = 20}) {
// Do stuff
}

// Call function
initialize({
canvas: {
width: 820,
height: 450,
bgColor: '#fff'
},
brushes: {
sizeSm: 10,
sizeLg: 20
},
});

首先,应该调整选项作为参数的语法以使用接口(interface)opts: options

接下来,如果我们想要一个默认值,我们需要正确地传递它:

function initialize(opts: options = {canvas : { width : 700}, brushes: {sizeSm : 20}} ) {

而且因为我们只设置了 width 和 sizeSm .. 其余部分调整为可选 (例如 heigth?:number)

玩那个here

关于javascript - Typescript - 将接口(interface)文字传递给函数参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38970948/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com