是否有一种访问JavaScript全局对象构造函数的方法,例如Angular 5视图中的数组而无需在组件中声明它们?
对于我的方案,我需要在视图中访问array.from((。
我当前正在声明数组:作为我组件字段的任何一部分,并将其在构造函数中初始化为:this.Array = array。有更好/推荐的方法吗?
hack, {{ [].constructor.from(foo) }}
。
这绝不应该在实际应用中完成,因为它具有代码气味(如评论所述(,以负面的方式影响性能,并指示潜在的XY问题。
这种逻辑应移至组件类。即使应该在模板中使用Array.from
来从其他迭代中创建数组,最好必须用作 pure pipe:
@Pipe({ name: 'array' })
class ArrayPipe implements PipeTransform {
transform(iterable: ArrayLike<any> | Iterable<any>): Array<any> {
return Array.from(iterable);
}
}