首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么Visual不能折叠包含Razor语法的Javascript函数?

为什么Visual不能折叠包含Razor语法的Javascript函数?
EN

Stack Overflow用户
提问于 2014-07-02 15:27:16
回答 2查看 5.3K关注 0票数 16

Visual中的.cshtml文件如下所示:

注意createTabStrip是如何崩溃的,但是createTeachersTab不能。为什么会这样呢?

编辑:它似乎与剃须刀语法有关。我把所有的@信号都拿出来,createTeachersTab就崩溃了。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-07-02 16:06:20

我想进一步谈谈我的意见。

您通常不希望在Razor视图中定义函数。相反,定义它们并从外部JavaScript文件导入它们。如果您需要来自C#的JavaScript信息,您可以在Razor分部中的JavaScript中创建一个全局配置对象,然后呈现该部分。

function_lib.js

代码语言:javascript
复制
function createTeachersTab() {
    ...
        read: {
            url: config.teachers.newTabUrl
        }
    ...
}

Views/Shared/_JavaScriptConfig.cshtml

这将在HTML的<head>中呈现为部分。

代码语言:javascript
复制
<script type="text/javascript">
    var config = {
        teachers: {
            newTabURL: '@Url.Action("Teachers", "Users")'
        }
    };
</script>

然后,在JavaScript中的任何其他地方,您都可以通过全局config JavaScript变量引用这些设置。

代码语言:javascript
复制
config.teachers.newTabUrl

编辑:我也完全认识到这并不能解决Visual中的代码折叠问题,这似乎是一个解析错误。真正的解决方案是“不要在Razor视图中定义JavaScript函数”,因为这被认为是错误的实践。

票数 6
EN

Stack Overflow用户

发布于 2019-05-26 09:35:35

您也可以高亮显示该块并按ctrl + m,ctrl +h来折叠该块。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24535161

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档