0

当我在 ColdFusion 8 中编写 cfc 时,在源代码中 ColdFusion 显示了以下注释:

<!-- application.cfm BEGIN -->
..
<!-- app_include.cfm BEGIN -->
..    
<!-- app_include.cfm END --> <!-- BEGIN variableDeclarations.cfm -->
...
<!-- END variableDeclarations.cfm  OR #request.directory# contains "storeworks"-->
...
<!-- application.cfm END -->

但是我什么都没写,只写了一个函数:

<cfcomponent Hint = "Test" displayname="Test" output="true">
  <cffunction name="GetProducts" returnformat="json" output="false" access="remote">

    <cfquery name="getMenu" dbtype="query" datasource="#request.dsn#">
    select * from Grades ORDER BY gradeID ASC
    </cfquery>

    <cfreturn getMenu />
  </cffunction>
</cfcomponent>

如何删除评论,或者如何不显示评论?

4

4 回答 4

8

如果您不想在 HTML 源代码中显示注释,则必须使用 ColdFusion 注释而不是 HTML 注释。

<!--- ColdFusion comments do not show up in source, they are ignored  --->

<!-- HTML comment can be viewed with view source -->
于 2011-07-22T15:43:01.807 回答
2

看起来这些注释已放入 Application.cfm 文件中,该文件在每个请求上运行。

正如 Andreas 已经说过的,如果您将这些注释更改为使用 3 个破折号而不是 2 个破折号,那么它们将不会出现在 HTML 源代码中。

于 2011-07-22T16:32:04.173 回答
0

您可以添加output=false<cffunction标签以抑制函数本身的任何输出。如果您只需要返回的查询,这将起作用。

<cffunction name="getMenu" output="false">
  <cfset var getMenu = "">
  <cfquery name="getMenu" dbtype="query" datasource="#request.dsn#">
  select * from Grades ORDER BY gradeID ASC
  </cfquery>

  <cfreturn getMenu />
</cffunction>
于 2011-07-22T15:43:15.513 回答
0

如前所述,给定名称,上述注释来自 cfapplication 文件。虽然将注释更改为 cf 注释会有所帮助,但更好的解决方案是将以下 cfsetting 标记添加到 cfapplication 文件的顶部和底部。

<cfsetting enablecfoutputonly="yes">

<!-- 你的 application.cfm 代码 -->

<cfsetting enablecfoutputonly="否">

这将抑制所有注释、任何无关字符,尤其是可能在 application.cfm 文件中生成的任何无关空格。

在您生成的 HTML 中是否注意到您的 DOCTYPE 行被数十个 CR 向下推到页面下方?此帮助将解决它。

于 2014-01-09T15:40:48.320 回答