Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/28.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Visual studio 2015 Visual Studio 2015 RC Typescript实验装饰程序错误_Visual Studio 2015_Angular_Typescript1.5 - Fatal编程技术网

Visual studio 2015 Visual Studio 2015 RC Typescript实验装饰程序错误

Visual studio 2015 Visual Studio 2015 RC Typescript实验装饰程序错误,visual-studio-2015,angular,typescript1.5,Visual Studio 2015,Angular,Typescript1.5,如何在VS2015中禁用以下错误 TS1219对装饰器的实验性支持是一项功能,在未来的版本中可能会有所改变。指定“--experimentalDecorators”以删除此警告。 我正在尝试使用Angular2注释。我尝试将以下内容手动添加到项目文件中,但没有成功: <TypeScriptExperimentalDecorators>True</TypeScriptExperimentalDecorators> True 我还安装了TypeScript 1.5.0测

如何在VS2015中禁用以下错误

TS1219对装饰器的实验性支持是一项功能,在未来的版本中可能会有所改变。指定“--experimentalDecorators”以删除此警告。

我正在尝试使用Angular2注释。我尝试将以下内容手动添加到项目文件中,但没有成功:

<TypeScriptExperimentalDecorators>True</TypeScriptExperimentalDecorators>
True

我还安装了TypeScript 1.5.0测试版扩展。

将IDE升级到最新版本。然后在项目根目录下创建tsconfig.json文件(如果您还没有)。然后添加
experimentalDecorators
作为编译器选项

示例:

{
  "version": "1.5.0",
  "compilerOptions": {
    "target": "es5",
    "module": "commonjs",
    "declaration": false,
    "noImplicitAny": false,
    "removeComments": true,
    "noLib": false,
    "emitDecoratorMetadata": true,
    "sourceMap": true,
    "listFiles": true,
    "outDir": "dist",
    "experimentalDecorators": true
  }
}
{
  "compileOnSave": true,
  "compilerOptions": {
    "module": "commonjs",
    "sourceMap": true,

    "experimentalDecorators": true
  }
}

Visual Studio 2015支持以Typescript 1.8版开始的tsconfig文件。在项目的根目录下创建tsconfig.json文件,并添加
experimentalDecorators
编译器选项

示例:

{
  "version": "1.5.0",
  "compilerOptions": {
    "target": "es5",
    "module": "commonjs",
    "declaration": false,
    "noImplicitAny": false,
    "removeComments": true,
    "noLib": false,
    "emitDecoratorMetadata": true,
    "sourceMap": true,
    "listFiles": true,
    "outDir": "dist",
    "experimentalDecorators": true
  }
}
{
  "compileOnSave": true,
  "compilerOptions": {
    "module": "commonjs",
    "sourceMap": true,

    "experimentalDecorators": true
  }
}
对于旧版本:

如果您有一个项目文件,则不会使用tsconfig。项目文件优先。我们仍然在刷新VS项目和tsconfig之间的集成故事,因为您可以在这两个项目中指定编译器选项

因此,要禁用错误消息,请右键单击项目文件,卸载项目,然后右键单击编辑项目文件,在文件末尾应有一个配置部分,添加:

<PropertyGroup Condition="'$(Configuration)' == 'Debug'">
  ....
  <TypeScriptExperimentalDecorators>true</TypeScriptExperimentalDecorators>
</PropertyGroup>

....
真的
保存并重新加载

您可能还需要TypeScriptEmitDecoratorMetadata来映射--EmitDecoratorMetadata


我也有类似的问题。我有很多东西要和大家分享我的发现。我也在研究Angular 2(ng-book-2)

我在用什么?

IDE:WebStorm

打字稿:1.6.2

时间:2015年10月10日

我在做什么?

我试着把app.ts编译成app.js;但是,我遇到了以下错误:

错误TS5052:如果未指定选项“experimentalDecorators”,则无法指定选项“emitDecoratorMetadata”

这是我之前的tsconfig.json

{
    "version": "1.5.0",
    "compilerOptions": {
        "target": "es5",
        "module": "commonjs",
        "declaration": false,
        "noImplicitAny": false,
        "removeComments": true,
        "noLib": false,
        "emitDecoratorMetadata": true
    },
    "filesGlob": [
        "./**/*.ts",
        "!./node_modules/**/*.ts"
    ],
    "files": [
        "./app.ts",
        "./typings/angular2/angular2.d.ts",
        "./typings/es6-promise/es6-promise.d.ts",
        "./typings/rx/rx-lite.d.ts",
        "./typings/rx/rx.d.ts",
        "./typings/tsd.d.ts"
    ]
}
这是我的tsconfig.json后面的

{
    "version": "1.6.2",
    "compilerOptions": {
        "target": "es5",
        "module": "commonjs",
        "declaration": false,
        "noImplicitAny": false,
        "removeComments": true,
        "noLib": false,
        "emitDecoratorMetadata": true,
        "experimentalDecorators": true
    },
    "filesGlob": [
        "./**/*.ts",
        "!./node_modules/**/*.ts"
    ],
    "files": [
        "./app.ts",
        "./typings/angular2/angular2.d.ts"
    ]
}
将tsconfig.json从之前更改为之后有效地解决了我的两个问题。一个是上面的问题,另一个是下面的问题。这里讨论后一个问题

打字/es6承诺/es6承诺d.ts(11,15):错误TS2300:重复标识符“承诺”。 打字/es6承诺/es6承诺d.ts(42,16):错误TS2300:重复标识符“承诺”。 打字/es6垫片/es6垫片d.ts(475,11):错误TS2300:重复标识符“承诺”。 打字/es6垫片/es6垫片d.ts(552,13):错误TS2300:重复标识符“承诺”


在Visual Studio 2015中,您必须在TypeScript项目文件中启用
TypeScriptExperimentalDecorators

卸载项目文件,然后添加此行:

<TypeScriptExperimentalDecorators>True</TypeScriptExperimentalDecorators>
True
我复制了完整的PropertyGroup,以便您可以找到添加位置:

<PropertyGroup Condition="'$(Configuration)' == 'Debug'">
  <TypeScriptRemoveComments>false</TypeScriptRemoveComments>
  <TypeScriptSourceMap>true</TypeScriptSourceMap>
  <TypeScriptTarget>ES5</TypeScriptTarget>
  <TypeScriptJSXEmit>None</TypeScriptJSXEmit>
  <TypeScriptCompileOnSaveEnabled>True</TypeScriptCompileOnSaveEnabled>
  <TypeScriptNoImplicitAny>False</TypeScriptNoImplicitAny>
  <TypeScriptModuleKind>System</TypeScriptModuleKind>
  <TypeScriptOutFile />
  <TypeScriptOutDir />
  <TypeScriptGeneratesDeclarations>False</TypeScriptGeneratesDeclarations>
  <TypeScriptNoEmitOnError>True</TypeScriptNoEmitOnError>
  <TypeScriptMapRoot />
  <TypeScriptSourceRoot />
  <TypeScriptExperimentalDecorators>True</TypeScriptExperimentalDecorators>
</PropertyGroup>

假的
真的
ES5
没有一个
真的
假的
系统
假的
真的
真的

1.7
...........
$(TypeScriptAdditionalFlags)--emitDecoratorMetadata--实验记录器

发现我还必须为元数据添加一个标记

<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|AnyCPU'">
    <!--other -->
    <TypeScriptExperimentalDecorators>True</TypeScriptExperimentalDecorators>
    <TypeScriptEmitDecoratorMetadata>True</TypeScriptEmitDecoratorMetadata>
</PropertyGroup>

真的
真的

我也遇到了这个问题

在以下时间遇到:

  • 从Angular2-2.0.0-beta.17开始
我的环境是:

  • Visual Studio 2015更新3
  • Microsoft Visual Studio扩展1.8.34.0的Typescript
  • 节点版本v6.2.2(cmdline“>Node--version”以查找您的节点)
  • ASP.NET核心项目
我的解决办法是:

  • 卸载项目
  • 将以下行添加到项目配置文件中
True
如果在csproj文件中找不到正确的属性组,或 您希望VS环境自动添加正确的属性组,然后只需切换“生成” 在“项目属性>生成”下的“生成时输出”,然后执行项目 卸货

  • 保存文件并重新加载项目
  • 关闭Visual Studio,然后启动并重新打开解决方案和项目
这里要注意的是,我现在没有tsconfig.json文件。添加 tsconfig.json文件导致问题再次出现

为了在添加tsconfig.json文件后进一步解决这个问题,我按照“安装依赖项类型”和“更新tsconfig.json”下关于使用.NET Core设置typescript的说明进行了操作

总结(但请自己阅读):

  • 打开cmd并导航到项目的src文件夹
  • 运行“npm安装-g打字”(我不喜欢这个。欢迎使用其他选项)
  • 向tsconfig.json中的编译器选项添加
    “experimentalDecorators”:true
  • 再次检查您的解决方案。上述问题现在应该消失了
上下文。除此之外,我还遇到以下问题:

  • 类型“Observable”上不存在属性“map”。(决议)

上述步骤为我解决了上述具体错误。我希望这会有所帮助。

我通过更改csproj文件中的TypeScriptToolsVersion来解决这个问题,以匹配packages.json中定义的TypeScript版本(目前为2.0.2)

2.0.2

我遇到了这个错误,因为我尝试错误地创建了一个扩展名为“.js”而不是“.ts”的新文件。它在将文件扩展名更改为“.ts”后消失

我必须在vscode的settings.json文件中添加以下内容以删除警告

“javascript.implicitProjectConfig.experimentalDecorators”:true

VSCode->首选项->设置


只需使用Nuget Package Manager,我就可以将我的TypeScript升级到最新版本,这就解决了这个问题

这与Typescr有关