angular – Typescript中的解构赋值
发布时间:2020-12-17 17:36:55 所属栏目:安全 来源:网络整理
导读:通过解构对象并分配变量,代码工作正常, const { allowNegative,decimal,precision,prefix,suffix,thousands } = this.options; 但是,当我尝试使用此操作符时,它会抛出一个错误: `{ this.tabConfig,this.searchUiConfig,this.gridUiConfig } = CONFIG;` 其中
通过解构对象并分配变量,代码工作正常,
const { allowNegative,decimal,precision,prefix,suffix,thousands } = this.options; 但是,当我尝试使用此操作符时,它会抛出一个错误: `{ this.tabConfig,this.searchUiConfig,this.gridUiConfig } = CONFIG;` 其中CONFIG是JSON.错误是[ts]赋值运算符(=)上的预期声明或语句. 有没有比这更好的方法: this.tabConfig = CONFIG.tabConfig; this.searchUiConfig = CONFIG.searchUiConfig; this.gridUiConfig = CONFIG.gridUiConfig; 解决方法
您可以使用以下语法执行此操作:
({ prop: this.prop } = obj); 我在这里使用的是deep object matching var obj = { propIwantFromObj: 'foo' }; var { propIwantFromObj: whereToStoreValue } = obj; 在左侧部分,您将说明要从对象获取哪个属性,在右侧,您将说明存储值的位置.因此,在这种情况下,将使用foo值创建一个名为whereToStoreValue的新变量. var obj = { propIwantFromObj: 'foo' }; var whereToStoreValue = obj.propIwantFromObj; 这可以用来存储这个(或其他对象)的值,但你需要将它包装在括号内,因为..由于某种原因,这个hack允许你使用.. 如果你不使用括号,你会得到语法错误(它也不适用于纯JS). 例: const CONFIG = { tabConfig: 1,searchUiConfig: 2,gridUiConfig: 3,}; class Foo { bar() { ({ tabConfig: this.tabConfig,searchUiConfig: this.searchUiConfig,gridUiConfig: this.gridUiConfig } = CONFIG); } } const foo = new Foo(); foo.bar(); console.log(foo.tabConfig); console.log(foo.searchUiConfig); console.log(foo.gridUiConfig); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |