2017-05-20 3 views
2

나는 typescript를 사용하고 있으며 개체에서 속성을 제거하려고합니다. 문제는 내가 클래스의 생성자에 속성에 할당 할 필요가 있다는 것입니다 :개체 밖으로 속성을 제거하고 생성자의 속성에 할당 할 수 있습니까?

var [{title :as this.title$}] = someData; 

어떤 모양이 가능 또는 형성 :

var someData = [{title: 'some title', desc: 'some desc'}]; 
var [{title}] = someData; // 'some title'; 

내가 더 같은 것을 원하는?

답변

3

예, 가능하지만 이미 존재하는 것으로 분해되기 때문에 선언 자 (var)를 제거해야합니다. 또한 as 구문이 잘못되었습니다. 그것을 제거하십시오.

[{title: this.title$}] = someData; 

완전한 예 :

const someData = [ 
    { title: 'Destructuring' } 
]; 

class A { 
    title$: string; 
    constructor() { 
    [{ title: this.title$ }] = someData; 
    } 
} 

TypeScript playground

Babel REPL

스택 발췌문

const someData = [{ 
 
    title: 'Destructuring' 
 
}]; 
 

 
class A { 
 
    constructor() { 
 
    [{title: this.title$}] = someData; 
 
    } 
 
} 
 

 
console.log(new A());
통해

관련 문제