- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
系统配置
第一次使用 angular2 时我的文件夹 sample/server 结构如下
|-- server.js
|-- server.ts
|-- tsconfig.json
|-- typings
| |-- browser
| | `-- ambient
| | |-- express
| | | `-- express.d.ts
| | |-- mime
| | | `-- mime.d.ts
| | |-- node
| | | `-- node.d.ts
| | `-- serve-static
| | `-- serve-static.d.ts
| |-- browser.d.ts
| |-- main
| | `-- ambient
| | |-- express
| | | `-- express.d.ts
| | |-- mime
| | | `-- mime.d.ts
| | |-- node
| | | `-- node.d.ts
| | `-- serve-static
| | `-- serve-static.d.ts
| `-- main.d.ts
`-- typings.json
{
"compilerOptions": {
"target": "ES5",
"module": "commonjs",
"sourceMap": true,
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"removeComments": false,
"noImplicitAny": false
},
"files": [
"./server/typings/main.d.ts",
"./server/server.ts"
],
"exclude": [
"node_modules",
// even used ../node_modules as the folder is located above this folder
"typings/browser.d.ts",
"typings/browser"
]
}
{
"ambientDependencies": {
"express": "github:DefinitelyTyped/DefinitelyTyped/express/express.d.ts#d1f6bde13f2209be42e86c3686761e8bfcbb50a5",
"mime": "github:DefinitelyTyped/DefinitelyTyped/mime/mime.d.ts#d1f6bde13f2209be42e86c3686761e8bfcbb50a5",
"node": "github:DefinitelyTyped/DefinitelyTyped/node/node.d.ts#aee0039a2d6686ec78352125010ebb38a7a7d743",
"serve-static": "github:DefinitelyTyped/DefinitelyTyped/serve-static/serve-static.d.ts#0fa4e9e61385646ea6a4cba2aef357353d2ce77f"
}
}
var path = require('path');
var gulp = require('gulp');
var gutil = require('gulp-util');
var ts = require('gulp-typescript');
gulp.task('log', function() {
gutil.log('== My Log Task ==')
});
gulp.task('buildServer', function () {
var tsProject = ts.createProject('./server/tsconfig.json');
return gulp.src('./server/**/*.ts')
.pipe(ts(tsProject))
.js
.pipe(gulp.dest('./server'))
});
/// <reference path="main/ambient/express/express.d.ts" />
/// <reference path="main/ambient/mime/mime.d.ts" />
/// <reference path="main/ambient/node/node.d.ts" />
/// <reference path="main/ambient/serve-static/serve-static.d.ts" />
运行时
usernam@hostname:~/sample$ gulp buildServer
它给出了类似于下面的 655 个错误,引用了 node.d.ts 的每一行
server/typings/browser/ambient/node/node.d.ts(754,9):错误 TS2300:重复标识符“内部”。
...
....
server/typings/main/ambient/node/node.d.ts(1943,18):错误 TS2300:重复的标识符“域”。
...
...
server/typings/main/ambient/serve-static/serve-static.d.ts(85,5):错误 TS2300:重复的标识符“export=”。
终于停了
[22:38:56] TypeScript: 655 semantic errors
[22:38:56] TypeScript: emit succeeded (with errors)
我注意到它首先对 main/ 文件夹给出错误,而不是对 browser/ 文件夹给出错误
我的猜测是问题出在 gulpfile.js 上; 在 gulpfile.js 中进行以下更改
return gulp.src('./server/**/*.ts')
返回 gulp.src('./server/main/*.ts')
然后gulp buildServer运行但立即完成。
.js
有什么作用? 请提出解决此问题的解决方法。我已经在网上看到过,但目前找不到任何有效的方法。
最佳答案
不要包含所有 *.ts
文件(包括定义文件),而是尝试仅包含所有 *.ts
文件(不包括所有 *) .d.ts
文件,main.d.ts
除外。
gulp.src(['server/**/*.ts', '!server/**/*.d.ts', 'server/typings/main.d.ts'])
或者(不是 100% 不明白排序是如何在我的脑海中进行的)
gulp.src(['server/**/*.ts', 'server/typings/main.d.ts', '!server/**/*.d.ts'])
更新:我最终使用 merge2
组合两个 gulp.src
流。
var gulp = require('gulp');
var merge = require('merge2');
var typescript = require('gulp-typescript');
gulp.task('build', function() {
var tsFiles = gulp.src('server/**/*.ts', '!server/typings/**');
return merge(tsFiles, gulp.src('server/typings/main.d.ts'))
.pipe(typescript(...));
});
关于node.js - Angular 2多次错误TS2300 : Duplicate identifier,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35368497/
更新:添加关于 Hashable 的相同错误 我已经创建了一个 Identifiable 兼容协议(protocol)和兼容结构。然后,当我创建列表并在 ForEach 中引用它时,我收到错误 Typ
这只是我偶然发现的例子! 我正在使用 cout与 operator // imports the declaration of std::cout using namespace std; // ma
我有一些表,我使用 MySQL Workbench 创建了 role_has_action 表。 创建的字段是:(role_id,action_id,action_controller_id): (为
我有一个 codesign 无法完全验证的应用程序,因为它“不满足其指定的要求”。第一次检查返回“在磁盘上有效”,所以没关系。 codesign -dvvvv -r- PATH_TO_APP 告诉我要
我正在使用 Java SDK 创建 SAS 来访问 blob。这是代码: SharedAccessBlobPolicy policy = new SharedAccessBlobPolicy(); p
#include "stdafx.h" #include #include #include #include #include using namespace std; #define T
我在代码中看到了这两种方法。你能解释一下这两者有什么区别吗?正如我认为它与 C++ 完成命名空间查找的方式有关,您能否也提供一些相关信息,或者提供一个好的文档的链接?谢谢。 最佳答案 示例: #inc
我一直在使用一个工具 sbconstants从我的 Xcode 项目中的 Storyboard 标识符和重用标识符创建外部常量。 我已将包含这些常量的所有声明的 header #imported 到项
我想知道 bundle Identifier(在 info.plist 中)之间的区别。以及产品 Bundle Identifier(在 Build Setting -> Packaging -> P
我有课Identifier它本质上是 UUID 的类型安全包装器(因此类 Foo 包含 Identifier )。 FooStore类有一个方法 List> bulkReadIdentifiers()
在 Go 中,公共(public)名称以大写字母开头,私有(private)名称以小写字母开头。 我正在编写一个不是库的程序,它是一个单独的包。是否有任何 Go 习语规定我的标识符应该全部公开还是全部
我有一个页面 url,它看起来像: http://mydomain.com/nodes/32/article/new?return=view 安装 tomcat 7 后,尝试访问它时出现此异常: /n
我正在学习以下教程: http://www.appcoda.com/ios7-programming-ibeacons-tutorial/ 但是,我没有使用 iPhone 作为信标,而是使用制造商(R
我在为我的 iPhone 应用程序的下一版本上传 .app 文件时收到此错误“Bundle Identifier differents from prior bundle identifier”。 注
Scene 1, Layer 'script', Frame 1, Line 9 1084: Syntax error: expecting identifier before this. Sc
升级到 Xcode 7 后,我注意到 CFBundleIdentifier 已开始指向在 Build Settings/Packaging 中找到的产品捆绑标识符,而不是 Info.Plist 中的捆
关闭。这个问题需要debugging details .它目前不接受答案。 想改进这个问题?将问题更新为 on-topic对于堆栈溢出。 5年前关闭。 Improve this question 我在
我使用 Apache DBCP 来获取连接池,我每次都使用 PoolingDataSource 来获取连接。当我向数据库中插入一个对象时,它工作得很好,但是当我尝试从数据库中选择一个元素时,就会出现问
由于我项目的 react-native 版本 (0.44.3),我正在尝试在版本 0.6.4 中安装包 react-native-today-widget,我能够成功安装包: yarn add rea
之前有人问过这个问题,我已经查看了所有其他 stackoverflow 主题的答案,但我无法解决这个问题。 我的应用程序在所有平台的模拟器中运行良好,但是当我在我的设备上运行该应用程序时,我收到错误代
我是一名优秀的程序员,十分优秀!