2017-04-04 38 views
7

我在我的应用程序中有几个简单的“纯”实用功能,我想保留在一个地方。问题是,我可以通过导入他们在我的组件:哪里可以在模板中提供角度2中的实用功能

import { utilities } from '../shared/utilities' 

然而,这些效用函数/方法是不是在我的模板文件可用(因为它们只能绑定到组件类)。我必须在我的组件中创建这些函数的别名才能使用它们。有一个更好的方法吗?

回答

3

我想你应该可以在模板中使用这些工具,如果你将它注入到你的控制器中。 事情是这样的:

import { Utilities } from './shared/utils'; 

@Component({ 
    .... 
    .... 
}) 
export class ExampleComponent { 
    constructor(public util: Utilities) { } 
} 

在模板中,你应该能够使用util.your_function

更新:

export class ExampleComponent { 
    constructor(public util: Utilities) { } 

    get staticMethod1() { return Utilities.staticMethod1(); } 
} 
+0

感谢 - 它现在,但该声明'static'的方法我的课程仍然无法在模板文件中访问。任何解决他们的方法? – Hassan

+0

对于静态的实用方法,您应该将它们制作为Pipes。 –

+0

您也可以在组件中使用getter来访问静态方法。我已经更新了答案。 –

相关问题