【问题标题】:How to set ASP.NET Core 2 to fix arrow functions in bundleconfig.json如何设置 ASP.NET Core 2 以修复 bundleconfig.json 中的箭头函数
【发布时间】:2017-11-09 12:22:54
【问题描述】:

我在我的 java 脚本中使用了很多箭头函数,例如

$(document).ready(()=> {
    var n = 0;
    n++;
    console.log("n is " + n);
});

在 asp.net core 2 项目中,我有 bundleconfig.json 如下:

{
    "outputFileName": "wwwroot/js/site.min.js",
    "inputFiles": [
      "wwwroot/js/site.js"
    ],
    // Optionally specify minification options
    "minify": {
      "enabled": true,
      "renameLocals": true
    },
    // Optionally generate .map file
    "sourceMap": false
  }

缩小后的输出是这样的:

$(document).ready(()=>{var n=0;n++;console.log("we are ready"+n)});

在 IE 上不起作用,我需要将箭头函数转换为适当的函数闭包,如下所示:

$(document).ready(function(){var n=0;n++;console.log("we are ready"+n)});

我该怎么做?

【问题讨论】:

  • 你确定吗?你知道吗,与经典函数相比,“this”在箭头函数中具有不同的上下文。因此,我不完全确定这种翻译是否安全。
  • 您只需要添加一个转译器即可生成 ES5 代码。
  • 是的,你是对的,但你能告诉我如何将 babel 与 .net core 2 集成吗?

标签: javascript .net-core bundle babeljs bundling-and-minification


【解决方案1】:

我认为你需要一些 polyfill 转译器。像 TypeScript 或 Babel。
或许this可以帮到你。

对于与 ASP.NET Core 的集成,this linkthis one 可能会对您有所帮助。如果不是,你最好的选择是在 GitHub 上找到一些模板。尽管这可能很难,因为您可以找到的大多数模板都将 ASP.NET Core 与 Angular 或 React 连接起来。

【讨论】:

  • 谢谢,但这并不能回答问题,我如何在 .Net Core 2 中实现它?
  • @EhsanZargarErshadi 试图编辑我的答案。除此之外,为了帮助您,我没有足够的知识。祝你好运。
  • 您在第二个链接上提供的示例是针对 dot net core 1,而不是 2
  • 应该差不多。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-02-26
  • 1970-01-01
  • 2018-06-14
  • 1970-01-01
  • 2021-06-24
  • 1970-01-01
相关资源
最近更新 更多