2012-07-11 15 views
9

Tôi có một trang test.cfm và muốn gọi một CFC với một <cffunction> tên errorEmail sử dụng <cfscript> từ trang đó (test.cfm) thay vìLàm thế nào để bạn gọi một cffunction trong một cfc từ một trang cfm bằng cách sử dụng cfscript?

<cfinvoke component = "#cfcPath#" method = "errorEmail" returnVariable = "myReturn" 
    description = "get list of projman"> 
</cfinvoke> 

Tôi đã thử:

<cfscript> 
    errorEmail(cfcPath); 
</cfscript> 
+0

lý do không gọi là gì ' errorEmail' với thẻ cfinvoke? –

+0

Đó là cách tôi thử nghiệm các chức năng của tôi trong cfcs. Tôi tạo một trang test.cfm và gọi các hàm trong cfc mà tôi đang thử nghiệm. Sau đó, tôi thường làm cfdumps trong test.cfm để đảm bảo các hàm hoạt động. – isurfbecause

Trả lời

10

tôi làm điều này mọi lúc.

1) Tạo đối tượng:

<cfscript> 
    // CREATE OBJECT 
    TheCFC = createObject("component", "thecfc"); 
</cfscript> 

2) Gọi hàm:

<cfscript> 
    // CALL THE FUNCTION 
    SomeVariable = TheCFC .theFunction(); 
</cfscript> 

phiên bản của bạn sẽ trông như thế này

<cfscript> 
    // CREATE OBJECT 
    TheObject = createObject("component", "cfcPath"); 
    // CALL THE FUNCTION 
    myReturn = TheObject.errorEmail(); 
</cfscript> 
+4

Bạn có thể rút ngắn điều này bằng cách chuỗi các cuộc gọi: createObject ("component", "cfcPath"). ErrorEmail(); –

+1

Có, bạn có thể làm điều đó. Thông thường, tôi không. Tôi tạo đối tượng ở đầu trang và có thể tham chiếu đến nó nhiều lần trong toàn bộ trang. Ý tưởng tốt mặc dù! –

+0

Cảm ơn các bạn, điều này sẽ giúp tôi kiểm tra các chức năng của mình nhanh hơn! Ngoài ra, @Eric tôi không biết bạn có thể chuỗi như jQuery, cảm ơn. – isurfbecause