在捆绑

时间:2017-10-27 11:45:03

标签: javascript c# typescript bundling-and-minification

使用.net捆绑设置BundleTable.EnableOptimizations = true;将我的javascript捆绑在一起后,我遇到了一个奇怪的问题

下面是抛出错误的发出文件的一部分(简化版本):

var somVar = new b({
        searchUrl: "/someUrl",
        data: n => {
            query: n.term,
            page: n.page,
            teamId: this.props.teamId,
            season: this.props.season
        },
        resultFormat: this.formatState,
        resultSort: this.sortResults,
        onSelect: this.handlePlayerSelect
    });

然而,在第5行,它告诉我Unexpected token :。我不明白这一点。也许我在这里忽略了一些基本的东西。 如果没有优化,脚本就会正常运行。

在非优化版本中,该部件看起来像这样:

var someVar = new Select2({
        searchUrl: "/someUrl",
        data: (params) => {
            return {
                query: params.term,
                page: params.page,
                teamId: this.props.teamId,
                season: this.props.season
            };
        },
        resultFormat: this.formatState,
        resultSort: this.sortResults,
        onSelect: this.handlePlayerSelect
    })

这是原始的打字稿版本:

new Select2({
    searchUrl: "/someUrl",
    data: (params: Select2QueryOptions) => {
        return {
            query: params.term,
            page: params.page,
            teamId: this.props.teamId,
            season: this.props.season
        }
    },
    resultFormat: this.formatState,
    resultSort: this.sortResults,
    onSelect: this.handlePlayerSelect
} as ISelect2Props)

这是一个数组的一部分,它作为一个子模块传递给一个基本模块,因此没有变量被绑定到这里。

1 个答案:

答案 0 :(得分:0)

我无法告诉你为什么它会以一种不起作用的方式进行优化,但这应该是urn。

var somVar = new b({
    searchUrl: "/someUrl",
    data: n => {
        return {
            query: n.term,
            page: n.page,
            teamId: this.props.teamId,
            season: this.props.season
        };
    },
    resultFormat: this.formatState,
    resultSort: this.sortResults,
    onSelect: this.handlePlayerSelect
});

请注意,我只更改了使用显式返回调用返回数据的方式。