If you're component is stateful, you'll want to invoke methods on the
same instance of the component instead of continually creating new
instances.

<!--- Instantiate a component that adds two numbers --->
<cfset myAdder = createObject("component", "addsTwoNumbers") />

<!--- Set first number --->
<cfinvoke 
   component="#myAdder#" 
   method="setNumberOne" 
   <cfinvokeargument 
      name="number" 
      value="2">
</cfinvoke>

<!--- Set second number --->
<cfinvoke 
   component="#myAdder#" 
   method="setNumberTwo" 
   <cfinvokeargument 
      name="number" 
      value="3">
</cfinvoke>

<!--- Get sum --->
<cfinvoke 
   component="#myAdder#" 
   method="getSum"
   returnVariable="sum" 
</cfinvoke>

<!--- Displays five --->
<cfoutput>#sum#</cfoutput>

There's a few different ways to write this....I'd probably use:

<cfset myAdder = createObject("component", "addsTwoNumbers") />
<cfset myAdder.SetNumberOne(2) />
<cfset myAdder.SetNumberTwo(3) />
<cfoutput>#myAdder.getSum()#</cfoutput>

-joe


On Mon, 29 Nov 2004 12:59:01 -0600, Andy Ousterhout
<[EMAIL PROTECTED]> wrote:
> Why would you do that?
> 
> 
> 
> -----Original Message-----
> From: Sean Corfield.
> 
> Unless you specify a component *reference* in <cfinvoke> rather than a
> component name:
> 
> <cfset t = createObject("component", "test") />
> <cfinvoke component="#t#" method="testMethod" returnvariable="r" />
> --
> 
> 

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|
Special thanks to the CF Community Suite Gold Sponsor - CFHosting.net
http://www.cfhosting.net

Message: http://www.houseoffusion.com/lists.cfm/link=i:4:185569
Archives: http://www.houseoffusion.com/cf_lists/threads.cfm/4
Subscription: http://www.houseoffusion.com/lists.cfm/link=s:4
Unsubscribe: http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4
Donations & Support: http://www.houseoffusion.com/tiny.cfm/54

Reply via email to