javascript - TypeScript:初始化嵌套对象的更简单方法?

标签 javascript typescript function object ecmascript-6

在 Angular/TypeScript 中工作,一个小问题:假设我有一个带有嵌套对象的已定义对象和一个空白构造函数。 (在这种情况下,它来自一个包,所以我无法编辑它;否则我会添加一个构造函数。)

目前我像这样初始化它:

var childObj = new ChildObj();
childObj.ChildProp = 'my child prop';

var myObj = new MyObj();
myObj.Prop1 = 'foo';
myObj.Prop2 = 'bar';
myObj.ChildProp = childObj;

是否有更简单的方法来实现上述目标?我认为对象初始化语法在 JS/TypeScript 中不起作用。我很想使用这种语法:

var myObj = new MyObj {
    Prop1 = 'foo',
    Prop2 = 'bar',
    ChildObj = new ChildObj {
        childObj.ChildProp = 'my child prop'
    }
};

最佳答案

试试这个:

let myObj = {
    prop1: 'foo',
    pop2: 'bar',
    childObj: {
        childProp: 'my child prop'
    }
} as MyObj;

关于javascript - TypeScript:初始化嵌套对象的更简单方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56031878/

相关文章:

javascript - JS中私有(private)方法的一种尝试

javascript - 使用 javascript 创建动态内容的最佳方式?

javascript - 检查是否在不使用 JQUERY 的情况下加载了另一个脚本

javascript - Angular 4 禁用的 FormControl 不会检查或显示验证错误

C 全局函数(非 C++)

iphone - 如何从另一个类文件调用函数

javascript - 使用tinyMCE时,有没有办法从编辑器实例获取对工具栏的引用?

javascript - 使用 Chrome 扩展,如何使用长期连接(端口)将消息从后台脚本传递到内容脚本?

typescript - 不可变列表和 Typescript 定义具有类型的对象数组的正确方法

Typescript -> Babel sourcemaps 使用 webpack