Function Coldfusion中组件之间的函数调用

Function Coldfusion中组件之间的函数调用,function,coldfusion,cfc,cfml,Function,Coldfusion,Cfc,Cfml,假设我有一个项目,我在那个项目中有几个CFC。在本例中,我有一个调试函数general.cfc,我希望在mandrill.cfc中使用该函数,而不必将代码复制并粘贴到后一个cfc中。我一直在谷歌上搜索这个,直到我不能再谷歌了,我知道我需要把它贴在这里 有人愿意带我去学校吗?我的解决方案是使用mandrill.cfc通用.cfc组件: <cfcomponent extends="general" name="mandrill" ...> 另请参见我将这样做 <cfset

假设我有一个项目,我在那个项目中有几个CFC。在本例中,我有一个调试函数
general.cfc
,我希望在
mandrill.cfc
中使用该函数,而不必将代码复制并粘贴到后一个cfc中。我一直在谷歌上搜索这个,直到我不能再谷歌了,我知道我需要把它贴在这里


有人愿意带我去学校吗?

我的解决方案是使用
mandrill.cfc
通用.cfc组件:

<cfcomponent extends="general" name="mandrill" ...> 


另请参见

我将这样做

<cfset var objGeneral = createObject("component","general")>


然后,如果您在
general.cfc
中有一个名为
getName()
的函数,您可以通过说
objGeneral.getName()

来调用它,您应该了解的是的概念,并且应该特别了解如何在ColdFusion(or)的上下文中实现它

基本上,在
Mandrill
中有一个init()参数,它将接受一个
General
对象,然后使用
variables.General
的方法将
General
对象设置到
Mandrill
对象的变量范围内


也就是说,这在单例对象上效果最好。如果您需要在瞬态对象上执行此类操作,我只需在
Mandrill
代码中根据需要实例化
General
对象(即:现在Matt Busche建议)。

不同意。从组件的描述来看,Mandrill不是通用的,所以它不是它的子类。Matt Busche有一个更好的主意。不知道为什么会有接近的投票。这不是一个非常复杂的问题,但它仍然是一个问题,并且在ColdFusion的上下文中是有效的(我想知道投票关闭人是否是CF用户?)我想知道投票关闭人是否是CF用户?值得怀疑,因为这两个理由都不适用。问题很清楚,也不太广泛。投票决定不公开。记住要扩大范围
值得一提的是,objGeneral可以在伪构造函数中设置(在任何函数定义之外,但在
内部),并在整个CFC中使用。原始函数是关于使用函数的。
不是更好吗?@JamesMohler不,没有任何真正的理由使用
。创建对象的成本基本为零。