2009-06-10 31 views

答えて

16

短い回答: 問題ではありません。

cfscript明示的にwriteOutput()を呼び出さない限り、何も出力しません。これには、cfscriptの機能と、機能外の任意のcfscriptコードが含まれます。

これはCFタグの構文とは異なります。これは、デフォルトではタグ間に空白を少なくとも出力します。 cfscriptでは、書き込むテキストはすべてCFMLエンジンによってコンパイルされます。 CFタグでは、書き込むテキストはすべて出力バッファに書き込まれ、ブラウザに送られます。

長い答え: 出力属性を指定しないのと同じです。

cfscriptブロックは何も出力しません。 cfsilentでラップされていない場合、タグブロックは空白を出力します。はい、cffunctionsでさえ、出力属性がfalseに設定されていると、出力は破棄されます。

Peter Boughtonの答えの本質は正しいです。それはcfsilentでもcfoutputでも包まれていません。出力は禁止されていませんが、明示的に行わない限り発生しません。

いつでもタグベースのcffunctionをスクリプトと組み合わせて、両方の世界のベストを得ることができます。何かのようなもの...

<cffunction name="x" output="false" access="package"> 
    <cfargument name="y" type="string" required="false" default="YY" /> 
    <cfscript> 
     var someValue = y & "something"; 
     writeOutput("test"); // this will not be written 
     return someValue; 
    </cfscript> 
</cffunction> 

これは、あなたがVAR文を含め、CFScriptにして体を埋める、その後、(あなたがcfscript関数を使って行うことができない)cffunctionタグに出力し、アクセスを指定するだけでなく、引数はオプションとすることを可能にすることができますし、関数は戻ります。もちろん

、その機能のために、あなたはoutput属性を削除するか、trueに変更した場合、それはます出力「test」返す前に。

+1

CF9では、cfscriptで定義された関数にオプションの引数を付けることができます。 [CFScriptでのコンポーネントと関数の定義](http://help.adobe.com/jp/ColdFusion/9.0/Developing/WSE99A664D-44E3-44d1-92A0-5FDF8D82B55C.html)を参照してください。 –

+0

悲しいことに、これは実際には正しくありません。 cfscript関数でORMの結果に 'SerializeJSON()'を実行すると、3行の空白が表示されます。 'output = 'no'の' cffunction'では、空白がありません。 – Nucleon

+0

修正 - cfscript関数にoutput = "no"を設定すると、この動作をスケルチできます。 – Nucleon

1

私は完全にはわかりませんが、スクリプトの機能はcffunctionタグと同じです。デフォルトではtrueでもfalseでもありません。 cffunctionためoutput属性を設定

は、以下の場合です:

  • truecfoutputに包まれている機能と同等です。
  • falseは、cfsilentでラップされている関数に相当します。
  • デフォルト(未定義)のままにすると、cfoutputでもcfsilentでもラップされていない標準コードと同等です。

しかし、私はcfscriptを使用することはほとんどないが、これは実際にはそうでないかもしれない - 私たちは他の人が一緒に来て、これを確認または修正のいずれかを待つ必要があります。

4

cfscript関数は奇妙な猿です。彼らは両方の種類です。 output = "false"と指定することはできませんが、writeOutput()を使用するまでは可能ですが、cfcexplorerによってoutput = "true"としてレポートされます。 cfml諮問委員会が今見ているのは奇妙な問題です。

+0

これは正解だと思いますが、誰かが確認できますか?ありがとうございました。 – Henry

+0

実際、Peter Boughtonの答えと私の答えはどちらも正しいと言えます。 –

関連する問題