Articles of tsc

获取错误:如何从打字稿中正确使用我的转录和打字的打字稿npm模块?

我仍然打字打字。 我写了一个简单的“hello world”打字稿模块,并将其发布到npm 。 真的很平凡,只是做一个默认导出: export default function hello(target: string = 'World'): void { console.log(`Hello, ${target} :-(`) } 它被node.js 0.10 – > 6消耗得非常好。该模块在package.json中也具有适当的"typings"属性,指向由tsc生成的现有的.d.ts文件, 正如在官方文档中所解释的 : export default function hello(target?: string): void; 但是,打字稿1.8和2都不能打印它, import hello = require('hello-world-emo') hello() hello('Offirmo') 使用tsc传输或使用ts-node执行都会给出相同的错误消息: TSError: ⨯ Unable to compile TypeScript hello.ts (3,1): Cannot invoke an expression whose type lacks a […]

如何让TypeScript编译器不发出目录结构

在我当前的TypeScript项目中,我有以下文件结构: project ├─app │ └─index.html ├─test └─src ├─app │ ├─tsconfig.json │ └─app.ts ├─lib │ └─lib.ts └─test ├─tsconfig.json └─test.ts 我想实现的是,当编译这个项目的app并test生成的文件结构如下所示: project ├─app │ ├─index.html │ └─app.js ├─test │ ├─lib │ │ └─lib.js │ └─test.js └─src └─… 或这个: project ├─app │ ├─index.html │ └─app.js ├─test │ ├─lib.js │ └─test.js └─src └─… 我有一个库位于lib目录中。 它被app.ts使用,然后在网页上使用。 testing位于testing目录内。 我实际得到的是: project ├─app […]

Typescript – tsc编译器会中断我的代码

我在Typescript中编写了这个代码 import redis from 'redis'; import Promise from 'bluebird'; const DEFAULT_REDIS_TTL = 7200; // 2 hours export default class Redis { readonly client : any; ttl : number = DEFAULT_REDIS_TTL; constructor(uri? : string, ttl : number = DEFAULT_REDIS_TTL) { this.client = redis.createClient(uri); } … } export { Redis }; 编译器给了我这个 "use strict"; Object.defineProperty(exports, "__esModule", { […]

无法在OS X中通过terminal安装tsc

我试图安装tsc,但是当我运行它时,我得到大量的错误。 我已经尝试重新安装节点和npm现在至less三次,但无济于事。 我设置标志为我的NPM详细,这是我得到的: Mitch:~ mitch$ npm install -g typescript npm info it worked if it ends with ok npm verb cli [ '/usr/local/bin/node', npm verb cli '/usr/local/bin/npm', npm verb cli 'install', npm verb cli '-g', npm verb cli 'typescript' ] npm info using npm@2.11.3 npm info using node@v0.12.7 npm verb install initial load of /usr/local/lib/package.json […]

在使用npm定义时,tsc如何得到它的定义

所以我从使用typings到使用npm 。 因此,您在@types中有@types目录,但除此之外,没有其他文件。 随着typings我总是不得不包括index.d.ts文件index.d.ts ,但使用npm这是没有必要的。 我想问一下为什么是这样。 npm是否使用了tsc某种隐藏function,或者微软和npm背后的人是否同意?

TSC错误TS1110 node.d.ts Node.js v6.x

运行tsc我得到了很多的表单错误 typings/node/node.d.ts(Ln,Col): error TS1110: Type expected. 供参考: node.d.ts的第一行说 //为Node.js v6.x定义types 这些错误的原因是什么以及如何解决这些错误? 重现步骤:在只有文件tsconfig.json的目录中 { "compilerOptions": { "target": "es5", "sourceMap": true, "module": "commonjs", "outDir": "." } } 接下来,执行命令tsd install body-parser –save ,output: – body-parser / body-parser -> express > express -> serve-static > serve-static -> express-serve-static-core > express-serve-static-core -> node > node -> mime > mime > […]

TypeScript – 使用<reference path =“…”>标记

我想添加一个插件到TypeScript编译器,所以我添加了我的代码,我编译了tsc.ts. 它编译正确,但是当我运行时,它缺less一些在io.ts中声明的variables。 我删除了我的更改,但仍然无效。 所以我试过这个: 文件:a.ts var a : number = 5; 文件:b.ts ///<reference path='a.ts' /> console.log(a); 然后编译: tsc b.ts给我a.js和b.js. 当我尝试运行b.js(我做node b.js )时,variablesa是未定义的。 这是b.js的内容: ///<reference path='a.ts' /> console.log(a); 所以a是不确定的,因为a在这个文件中是不存在的,所以a.ts 。 我编译错了,还是执行错了..或者是什么?

从Java运行TypeScript编译器

我想从我的Java应用程序运行TypeScript编译器。 首先,我想弄清楚,是否可以从命令行运行没有Node.js的编译器: $ jsc tsc.js 但是这样我就不会有任何的错误,也没有帮助。 $ jsc tsc.js myscript.ts 会让我无处可去。 从java直接运行js代码很容易(我希望以这种方式运行编译器),但是可以在没有node.js的情况下运行TypeScript编译器吗? 编辑: 我确认与犀牛一样的行为。

包含node.d.ts时的Typescript编译器错误

我最近开始将表单PHP切换到Node.js,由于我是一个巨大的Typescript风扇,我正在使用Typescript + Node.js。 当我开始放大并真正构build我的代码时,我的示例编译就很好。 但后来我遇到了一个问题。 每当在.ts文件中引用node.d.ts(带有引用doc注释)时,Node.js中的Typescript编译器就会抱怨重复的定义。 我的两个.ts文件抱怨没有node.d.ts定义,但我的main.js文件没有。 (下面的文件:) search_request.ts /// <reference path="definitions/mustache.d.ts" /> import url = module("url"); import mu = module("mu2"); export function handler(request, response) { //code.. } main.ts /// <reference path="servers/search_request.ts" /> import search_request = module("./servers/search_request"); import express = module("express"); var app = express(); app.get("/search.html", search_request.handler); app.listen(3000); 如果我将<reference path="node.d.ts" />到search_request.ts的顶部,则编译正常。 如果我删除它,我会收到有关缺less定义的警告。 但是,如果我把它包含在任何一个文件中,编译main.ts会给我几百个关于重复标识符的警告。 我不是新来的Typescript,但我是新的Node.js和新的直接使用TSC编译器,而不是通过VS2012。 我究竟做错了什么? […]

Webpack与客户端/服务器节点设置?

我正在尝试为具有节点后端服务器的Angular2应用程序设置基于webpack的stream程。 经过几个小时的抨击,我已经设法让客户快乐地build设,但我不知道如何现在整合我的服务器版本。 我的服务器使用生成器,所以必须针对ES6,它需要指向一个不同的types文件(main.d.ts而不是browser.d.ts)。 我的源代码树看起来像; / — client/ — — <all my angular2 bits> (*.ts) — server/ — — <all my node/express bits> (*.ts) — webpack.config.js — typings/ — — browser.d.ts — — main.d.ts 我想也许只是在客户端和服务器文件夹tsconfig.json会工作,但没有运气那里。 我也无法find一个方法来获取html-webpack-plugin来忽略我的服务器包,而不是将其注入到index.html中。 我目前的tsconfig和webpack在下面,但有谁成功地让webpack捆绑这样的设置? 任何指针将不胜感激。 { "compilerOptions": { "target": "es5", "module": "commonjs", "moduleResolution": "node", "sourceMap": true, "declaration": false, "removeComments": true, "noEmitHelpers": false, "emitDecoratorMetadata": […]