Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cassandra/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc asp.net mvc中的节脚本与脚本标记_Asp.net Mvc - Fatal编程技术网

Asp.net mvc asp.net mvc中的节脚本与脚本标记

Asp.net mvc asp.net mvc中的节脚本与脚本标记,asp.net-mvc,Asp.net Mvc,关于节脚本和脚本标记的两个语句的区别是什么?不是脚本中我不感兴趣的内容 @section Scripts { @Scripts.Render(Bundles.Scripts.Validation) } vs 您可能需要在_layout.cshtml文件中定义特定内容的部分。一般认为,样式属于,脚本属于之前。您的里程可能会有所不同 如果您只是输出,它将与所有内容一起输出,而不是您希望的位置。 若脚本内部视图依赖于某个东西(jquery),并且在您的布局中,您有 @renderBody()

关于节脚本和脚本标记的两个语句的区别是什么?不是脚本中我不感兴趣的内容

@section Scripts {
    @Scripts.Render(Bundles.Scripts.Validation)
}
vs


您可能需要在_layout.cshtml文件中定义特定内容的部分。一般认为,样式属于
,脚本属于
之前。您的里程可能会有所不同

如果您只是输出
,它将与所有内容一起输出,而不是您希望的位置。 若脚本内部视图依赖于某个东西(jquery),并且在您的布局中,您有

@renderBody()    
<script src=jquery.js></script>
@renderSection("scripts",required:false)
@renderBody()
@renderSection(“脚本”,必需:false)

然后你被拧上(-:

第一个(第一个(在布局中
@RenderSection(“脚本”)
的位置呈现
标记

当您不必为所有页面包含脚本时,最好使用此

另外,
@Scripts.Render
将缩小并捆绑您的脚本。通常在
正文
标记的末尾使用,以便视图可以在呈现DOM后获取脚本

第二个仍保留在使用
标记的位置

如果在
Layout
中使用它,脚本将包含在所有页面中(例如
jQuery


让我们举个例子

 <!-- HTML in Layout, before Scrip -->
 @RenderBody()
 <script src="@Url.Content("~/Scripts/jquery.min.js")"></script>
 @RenderSection("Scripts")
 <!-- HTML after Script -->

@RenderBody()
@渲染部分(“脚本”)
这里,如果脚本使用了
jQuery
您希望包含在
部分中,因为
jQuery
包含在
部分之前


如果您在视图中包含
,您将给出一个错误,
jQuery
丢失,因为在
jQuery
之前包含,第一个将在发布模式下捆绑并缩小脚本(取决于您的设置),第二个不会。第一个(
@节脚本
)允许您在布局页面占位符中呈现脚本(由
@RenderSection(“脚本”,必需:false)
)定义),因此@RenderSection将在正文末尾呈现我的脚本包?@Elisa,
@RenderSection(“脚本”)
将在布局中放置脚本的位置渲染脚本。将脚本放在关闭
标记之前是正常的,但有些人更喜欢将脚本放在
中,因此我必须将脚本标记和.min文件放在关闭后RenderSection@Elisa当您不必包含时,首选
部分
e所有页面的脚本。如果您希望脚本出现在所有页面中,您可以在
RenderSection
之后/之前包含脚本,或者在其他位置包含脚本,这取决于您如何使用它。因此,当我有@RenderSection(“脚本”)时,为false);以及我要包含的.js文件,它必须在其他脚本之后运行,我必须将脚本标记放在@RenderSection语句之后,对吗?是的。@RenderSection只是从视图中呈现一个定义的节
 <!-- HTML in Layout, before Scrip -->
 @RenderBody()
 <script src="@Url.Content("~/Scripts/jquery.min.js")"></script>
 @RenderSection("Scripts")
 <!-- HTML after Script -->