Ich möchte eine Schnittstelle verwenden, um die Datentypen festzulegen und sie dann in der Funktion aufzurufen, während Standardwert festgelegt wird, wenn sie nicht übergeben werden.Typescript - Schnittstellen-Literale an Funktionsparameter übergeben
Ich erhalte einen Fehler von nach Canvas in der Funktion. Kann ich es nicht so nennen?
// 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
},
});
Wow, das sieht aus wie das, was ich bin nach. Natürlich muss ich den Parameter auf die Schnittstelle einstellen. Eine Sache, die ich oben gemacht habe, und ich bekomme "Identifier erwartet" für die Werte, z. '{Breite: 700}'. –
weil Sie diese 'Funktion initialisiert haben (Optionen {leinwand: {width: 700} ...' und das ist falsch .. weil wir die Schnittstelle als Typ vermissen. Wir brauchen das (wie in meiner Antwort) 'Funktion initialisiere (opts: options = {leinwand: {width: 700} '. die' opts' sind variable name, die ': optionen' sind type und nach' = 'können wir den voreingestellten wert sehen .. hoffe das hilft ein bisschen;) –
Richtig, danke, das war sehr hilfreich. –