1

有了TS進口,我相信我能做到這一點:打字稿進口與ES6對象解構

import {foo as bar} from 'foo'; 

與JS或打字稿ES6對象解構 - 是有沒有辦法重命名的「導入值」同樣的方式?

例如,

const {longVarName as lvn} = x.bar; 
+5

'常量{longVarName:LVN} = x.bar;'?會導致一個名爲lvn的const值爲x.bar.longVarName –

回答

2

使用由Jaromanda X建議的解決方案:

const {longVarName: lvn} = x.bar; 

事實上,你可以做更多的事:

多個變量

var {p: foo, q: bar} = o; 

默認值爲:

var {a = 10, b = 5} = {a: 3}; 

嵌套對象:

const x = {a: {b: {c: 10}}}; 
const {a: {b: {c: ten}}} = x; 
// ten === 10 

有關詳情,請參閱https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Operators/Destructuring_assignment

+0

這個ES6的權利?不是打字稿? –

+0

是的,這是ES6,是正確的。 – m1kael

+1

我可以確認它與TypeScript一起工作,這很有意義,因爲TS緊跟ES6。 –