将变量传递给cfcomponent初始化方法

时间:2017-06-08 14:32:36

标签: coldfusion-10

如果我正在执行以下操作:

<cfobject name="EmployeePermissions" component="CFCs.Permissions"  > 

<cfoutput> 
    Username: #EmployeePermissions.UserName#<br> 
</cfoutput>

使用组件:

<cfcomponent> 

    <cfset This.UserName = '' > 

    <cffunction name="init" access="public" output="no" returntype="Permissions"> 
        <cfargument name="UserName" type="string" required="yes"> 

        <cfset variables.UserName = arguments.UserName > 

        <cfreturn this> 
    </cffunction> 

</cfcomponent>

似乎没有调用初始化方法。此外,可以在不指定用户名的情况下使用该对象。如何要求用户名并确保调用init方法?

1 个答案:

答案 0 :(得分:0)

希望,以下答案将消除您的疑问。

<cfobject name="EmployeePermissions" component="CFCs.Permissions"  >
<cfset getUser = EmployeePermissions.init(UserName = "jawa")>
<cfoutput>
    #getUser#
</cfoutput>