我使用Babel进行ES2015模块定义。
我有一个文件var data = ['hat', 'cat', 'dog'];
data = data.join('').split('').reduce(function(sum, el) {
sum[el] = (sum[el] || 0) + 1;
return sum;
}, {});
console.log(data)
:
a.js
这需要文件require('babel-core/register')({presets: ['es2015']})
require('./b')
b.js
Babel将此编译为
export default b = () => true
然后抛出一个错误:
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = b = function Main() {
return true;
};
答案 0 :(得分:4)
我认为问题来自于babel添加strict mode
,因为您正在引用未声明的变量。将其更改为:
const b = () => true
export default b;
为我修好了。
答案 1 :(得分:0)
如果这是整个模块并且没有全局 public override Task MatchEndpoint(OAuthMatchEndpointContext context)
{
if (context.IsTokenEndpoint && context.Request.Method == "OPTIONS")
{
if (!context.OwinContext.Response.Headers.Keys.Contains("Access-Control-Allow-Origin"))
context.OwinContext.Response.Headers.AppendCommaSeparatedValues("Access-Control-Allow-Origin", new[] { ConfigurationManager.AppSettings["allowedOrigin"] });
if (!context.OwinContext.Response.Headers.Keys.Contains("Access-Control-Allow-Headers"))
context.OwinContext.Response.Headers.AppendCommaSeparatedValues("Access-Control-Allow-Headers", new[] { "Accept", "Content-Type", "Authorization", "Cache-Control", "Pragma", "Origin" });
if (!context.OwinContext.Response.Headers.Keys.Contains("Access-Control-Allow-Methods"))
context.OwinContext.Response.Headers.AppendCommaSeparatedValues("Access-Control-Allow-Methods", new[] { "GET", "POST", "PUT", "DELETE", "OPTIONS" });
context.MatchesTokenEndpoint();
context.RequestCompleted();
return Task.FromResult<object>(null);
}
return base.MatchEndpoint(context);
}
,那么这是一个运行时错误,因此这可能是第一个问题:
b