【问题标题】:Typescript compiled into wwwroot gives me "Duplicate identifier" error编译成 wwwroot 的打字稿给了我“重复的标识符”错误
【发布时间】:2014-12-30 16:01:16
【问题描述】:

我不确定我的项目结构是否不正确,或者我缺少某个设置,但我在 Visual Studio 2015 中遇到了一些问题,出现“重复标识符”错误。

我的 ASP.NET 5 项目中有我所有的打字稿文件,我有一个繁重的任务,将它们编译成 javascript 并将它们放在 wwwroot 文件夹中的脚本文件夹中。如果我理解正确,这就是将要部署的文件所在的位置。

我遇到的问题是,当我运行 grunt 任务并正确输出文件时,Visual Studio 开始在我的打字稿文件中警告我有重复的标识符。我原以为我可以告诉 VS 在某处忽略 wwwroot 文件夹,但我似乎找不到任何相关信息。

以前有人遇到过这种情况,还是我对如何处理结构有错误的理解?

【问题讨论】:

    标签: javascript gruntjs typescript visual-studio-2015


    【解决方案1】:

    visual studio 开始在我的打字稿文件中警告我有重复的标识符

    只有如果你有 两个 TypeScript 文件declare 使用相同的东西,就会发生这种情况(禁止使用任何像 resharper 这样的插件)。如您所知,编译输出 JavaScript 因此这不是导致此错误的原因。修复:删除重复的 TypeScript。

    附言

    我有一个繁重的任务,将它们编译成 javascript 并将它们放在 wwwroot 文件夹中的脚本文件夹中

    不是您的错误的根源。但我会使用 glob lib/**/*.js 在 VS 项目中包含 *.js 文件,因为 wwwroot 确实适用于特定的 IIS 安装,并且在您发布 Web 应用程序时不可移植。

    【讨论】:

    • 我只有在运行 grunt 任务时才会得到它们,如果我删除生成的文件就会出现错误。我正在运行 resharper,所以我必须看看是否有一些选项可以解决这个问题。 “使用 glob lib/**/*.js 作为 wwwroot”是什么意思?
    • 当我使用 ./**/*.ts 作为我的 grunt-typescript 任务的“scr”时遇到了这个问题。我猜它列举了整个文件夹结构,并包含了来自 grunt-typescript 模块内部的 .ts 文件。将“scr”的值更改为更具体解决了我的问题。我把这个留在这里,因为这是我搜索问题时出现的第一个答案。谢谢!
    猜你喜欢
    • 1970-01-01
    • 2017-08-01
    • 2016-09-20
    • 2015-09-28
    • 1970-01-01
    • 1970-01-01
    • 2020-04-22
    • 2017-06-26
    • 2016-04-06
    相关资源
    最近更新 更多