deklaration eller uttryck förväntas javascript/typescript


Jag använder Typescript 1.7 och React 0.14 med den nya ES6-syntaxen och jag har följande destruktueringsuppgift, som också förklaras här.

let x0, x1, y0, y1;
if(this.props.viewport) {
    {x0, x1, y0, y1} = this.props.viewport;
}

Men jag får felet Declaration or statement expected. Vad gör jag fel?

Tack

Svar #1

Så, jag hittade problemet. Var tvungen att sätta hela raden inom parentes. Så följande är korrekt.

let x0, x1, y0, y1;
if(this.props.viewport) {
    ({x0, x1, y0, y1} = this.props.viewport);
}

Svar #2

Jag hade det här problemet eftersom jag försökte använda case som ett variabelnamn, t.ex. var case=.... Nu vet jag att detta fel uppstod eftersom case redan används av JavaScripts Switch-sats.

Relaterade artiklar