gpt4 book ai didi

javascript - 在应用程序启动时生成路由 URL 列表并插入到 MVC 中的 javascript 文件中

转载 作者:行者123 更新时间:2023-11-28 08:52:37 24 4
gpt4 key购买 nike

我的应用程序使用 JavaScript 中的 AJAX 调用(使用 $.get$.post 等)对 Action 方法进行许多调用

我现在正在尝试清理我的 javascript 文件,唯一阻止我从页面中完全删除内联脚本的是需要让我的操作方法路由在页面中呈现,以便我可以将它们设置为我的正确变量JavaScript。

示例类似于

url = '@Url.Action("SomeMethod","SomeController",new{area="SomeArea"})'

我想做的是在 global.asax 中运行一个方法来生成我需要的路由(我手动编程它们没有问题),然后根据fileapp.js——其中包括所有生成的硬编码 URL——并在需要时更改 url。

这样我就可以将所有 url 放在全局对象中,而不必使用内联脚本来渲染 url。这可能吗?

最佳答案

因此,经过更多研究后,我找到了适合我想要的解决方案:

  1. 创建 ActionResult返回一个局部 View 的方法,基本上是 app.js排队。
    • 或者直接在 Controller 方法中编写javascript并返回 JavasScriptResult , as shown here ——尽管这是不受欢迎的。
  2. 创建 ActionFilterAttribute为上述方法设置缓存,per these instructions .
  3. 包括 <script>标签 <head>其源代码指向 javascript actionresult 方法。

最终结果:

public JavaScriptResult GetApp()
{
return PartialView("App.js.cshtml");
}

将缓存属性设置为每 24 小时(或其他)一次,以便我对 Controller 的调用仅被命中一次。现在我可以确保更改后的网址传播到客户端,而无需使用内联渲染。

关于javascript - 在应用程序启动时生成路由 URL 列表并插入到 MVC 中的 javascript 文件中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18969114/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com