干净的方式给MVC url javascript库

Clean way to give MVC urls to javascript libraries?

本文关键字:url javascript MVC 方式      更新时间:2023-09-26

我有一个javascript库,我已经写了,我希望能够使用类似的bootstrap的库是如何使用。也就是说,我想从页面元素的数据属性中驱动它们。

问题是这个库需要知道url到我们网站的特定部分(执行实用程序功能的服务器api)。我们的网站有多个实例部署了各种不同的配置,所以绝对url,相对url和~/都不适用于这种情况。

目前我能想到的提供此链接的唯一方法是将其作为使用js的元素上的数据属性,或在脚本标记中。前者是混乱的,后者是恼人的,因为我希望库只是工作,如果你引用脚本/包。

我的问题是,是否有一种替代方法可以为js提供一个mvc生成的url,比上面提到的替代方法更干净,更集中?

我想你可以试试这个

    加载你的js库在js库的初始化阶段调用默认端点(可以是web api)。或者当你的项目是构建创建json文件,其中包含所有的url,并从脚本加载这个json文件。我认为这取决于你是否需要动态生成这些url。
  1. 你的web api返回一个json对象,其中包含你需要的所有url。
然后

  1. 你不需要弄乱你的数据注释
  2. 你不需要使用script标签
  3. 你有一个集中存储的所有url。

您可以使用:

获取站点的基本url
window.location.protocol + "//" + window.location.host + "/"