Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/vim/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angular 尝试在不属于组件的模板文件中使用枚举_Angular_Angularjs Scope - Fatal编程技术网

Angular 尝试在不属于组件的模板文件中使用枚举

Angular 尝试在不属于组件的模板文件中使用枚举,angular,angularjs-scope,Angular,Angularjs Scope,如果我想利用组件范围之外的枚举 export enum Template { Foo = 0, Bar = 1, Fuzz = 2 } 但是当试图利用它作为我的模板文件时,它会抛出一个错误 <div *ngIf="model.type == Template.Foo"></div> 本质上是在组件的作用域内创建枚举作为其自己的属性。我只是不喜欢它虽然,它觉得肮脏和不正确 我认为组件装饰器中有一个属性可以为模板添加导出,但事实并非如此 我这样做是正确的,还是有一种不让人

如果我想利用组件范围之外的枚举

export enum Template { Foo = 0, Bar = 1, Fuzz = 2 }
但是当试图利用它作为我的模板文件时,它会抛出一个错误

<div *ngIf="model.type == Template.Foo"></div>
本质上是在组件的作用域内创建枚举作为其自己的属性。我只是不喜欢它虽然,它觉得肮脏和不正确

我认为组件装饰器中有一个属性可以为模板添加导出,但事实并非如此

我这样做是正确的,还是有一种不让人感觉像黑客的方式

多谢各位


编辑我问这个问题的原因,是AngularDart的方法是通过组件注释中的
exports
属性。请参阅:我不确定这是否只是技术上的分歧,或者是否有一个选项可以在不指定属性的情况下执行类似操作。

我认为将枚举指定给组件类的属性是正确的。正如我在中提到的,模板代码的最后一部分是component instance.Agreed。如果将组件视为“模板解析上下文”,那么模板绑定到的所有内容都应该封装在该模板中。因此,如果需要绑定到外部枚举或服务,请在组件中为其定义一个属性以用于绑定。我在两年的大部分时间里都在做角度镖,他们利用了组件注释中的一个属性,所以你可以看出我为什么感到困惑。我认为将枚举分配给组件类的属性是正确的。正如我在中提到的,模板代码的最后一部分是component instance.Agreed。如果将组件视为“模板解析上下文”,那么模板绑定到的所有内容都应该封装在该模板中。因此,如果需要绑定到外部枚举或服务,请在组件中为其定义一个属性以用于绑定。我在两年的大部分时间里都在做角度镖,他们利用了组件注释中的一个属性,所以你可以看出我为什么感到困惑。
Template = Template