Tag: 打字稿

用于Typings CLI实用程序的命令使typings文件夹与typings.json匹配

我有一个使用Typescript处理repo的大型团队,没有人将/typings文件夹检入团队的共享存储库,他们只检查typings.json文件,该文件指定项目所需的每个定义集的版本信息。 有时候有人会从typings.json删除一个定义集,因为他们正在处理的项目部分不再使用这个库(或者我们find了一个更好的定义集),使用 typings uninstall –global –save dt~whatever ,并且在他们的本地机器上工作正常, 但是当他们推typings.json和我或别人拉下来,当我们然后运行typings install ,命令只将新的定义添加到typings文件夹中,并且不会从typings文件夹中删除typings.json不再存在的typings.json 。 是否有一个命令,我可以运行添加新的定义集,并删除已删除的设置,通过将当前的typings.json从typings.json的状态typings.json当typings.json命令是最后一次运行? 目前我们只是让每个人都删除整个typings文件夹,并在每次拉动时再次运行typings install ,但是由于我们现在有很多定义集,所以效率有点低下。 注:我们尝试typestypings uninstall和typings uninstall –save但只是抛出错误(看来你可能只能指定具体的定义集来卸载)。

router_1.provideRouter在尝试运行Angular2 / NodeJS应用程序时不是函数

我创build了一个简单的NodeJS / Angular2应用程序,当我尝试访问应用程序的入口点页面时遇到以下错误: router_1.provideRouter is not a function 我不确定这个错误是什么意思,也不知道从哪里开始。 有没有人有任何见解或想法为什么这可能会发生? 这里是我的package.json文件(因为我认为这可能是与一个Angular软件包有关) { "name": "udemy-nodejs-angular2", "version": "1.0.0", "private": true, "scripts": { "start": "concurrently tsc -w && nodemon ./bin/www", "vendor": "gulp vendor", "gulp": "npm run vendor && gulp", "postinstall": "typings install", "typings": "typings" }, "dependencies": { "@angular/common": "^2.0.0-rc.2", "@angular/compiler": "^2.0.0-rc.2", "@angular/core": "^2.0.0-rc.2", "@angular/http": "2.0.0-rc.2", "@angular/platform-browser": "^2.0.0-rc.2", "@angular/platform-browser-dynamic": […]

无法在Docker中编译打字稿

我想在我的node.js Web Server中使用打字稿。 但是,Web Sever位于Docker容器中。 我使用Dockerfile,如下所示:FROM node:latest COPY code/ /usr/local/lib WORKDIR /usr/local/lib RUN npm install -g koa@2 RUN npm install -g sequelize RUN npm install -g mysql RUN npm install -g typescript CMD ["sh", "-c", "rm", "webApp.js"] CMD ["sh", "-c", "tsc", "webApp.ts"] CMD ["node", "webApp.js"] 在构buildDocker之后,我发现在CMD命令之后不会生成webApp.js。 为什么,我该如何解决? 谢谢。

Azure Web App不启动节点服务器

我正在通过bitbucket发布我的typecript node.js / express azure应用程序,而且似乎所有东西都正确编译,但是azure不会启动应用程序。 一个可责备的仓库在这里 。 我尝试克隆应用程序到一个新的本地目录,然后在输出文件夹中运行deploy.cmd和调用节点启动,并且工作正常。

分叉进程找不到模块

我有以下命令: var fk = cp.fork('./client/processes/getClipboardImage.js',[],{cwd: __dirname + '/../../'}); 然后运行这个: "use strict"; const electron_1 = require('electron'); var base64Image = electron_1.clipboard.readImage().toDataURL(); process.emit('got-string', base64Image); 我不知道为什么,但我得到一个错误说: 找不到模块“电子” fork中的文件可以访问电子,那为什么不分叉? 正在执行的文件位于运行utils/Workpace.js的方法的controllers ,并且该方法创buildfork。 客户机/控制器/ index.js import { Workspace } from '../../client/utils/Workspace'; import { globals } from '../../client/utils/global'; ipcRenderer.on('workspace.paste', e => { if (globals.activeWorkspace) { globals.activeWorkspace.pasteToLayer(); } }); 客户端/ utils的/ Workspace.js import cp […]

如何在发布NPM模块时pipe理外部.d.ts依赖项?

我正在向NPM注册处发布一个模块。 它是用TypeScript(在package.json使用typings属性和"declaration": true在我的tsconfig.json "declaration": true ) tsconfig.json 。 在构buildNPM模块时,我需要下列.d.ts文件,我通过.d.ts工具下载.d.ts文件: ES6诺言 MQTT.js 当我生成我的模块并将其包含在子项目中时,TypeScript警告我不要在模块中使用三重斜杠引用。 这些引用是由TypeScript在添加"declaration": true时添加的"declaration": true表示我的tsconfig.json 。 error TS2654: Exported external package typings file cannot contain tripleslash references. 如果我删除引用,我会得到types错误(或重复标识符警告)。 发布具有子依赖关系的NPM模块的正确方法是什么?

NeDB +打字稿

我如何使用types脚本类语法获得与NeDB的数据存储? namespace NamespaceName { "use strict"; export class Persistence { private attrs: Type; public static $inject: Array<string> = []; constructor( ) { this.attr1 = ""; } // Public Methods public method1() { … } // Private Methods private method1() { … } } } 我应该在哪里创build和实例化我的数据存储?

本机代码Typescript编译器

我真的很喜欢Typescript作为Javascript的一个理智的替代品,但我讨厌它拉动node.js作为依赖。 更糟糕的是,这个语言似乎只有一个编译器,而且是自行托pipe的。 没有任何独立的tsc可执行文件? 要清楚,我不想执行任何事情,我只想要一个编译器,它接收打字稿源文件的列表,并产生一个或多个javascript对象文件。

Typescript模块导入configuration文件

我想要伪造一些configuration文件来访问node_modules的path。 看来做下面的事情是不可能的,那么我应该怎样锻造我的道路呢? 目标是写一些node_modules的绝对path(导致一些文件被拆分,所以这是需要的)。 import someFileSettings from "./../../models/someFileSettings"; import * as request from JSON.stringify(someFileSettings .somePathIneed+"request");

数组长度属性JS的未注册成员

我遇到了这个代码,用于保持数组中的正向和反向引用: var arr = []; arr[arr['A'] = 0] = 'A'; arr[arr['B'] = 1] = 'B'; // On node interpreter arr // [ 'A', 'B', A: 0, B: 1 ] arr["A"] // 0 arr["B"] // 1 arr[0] // 'A' arr[1] // 'B' arr[2] // 'undefined' arr.length // 2 A: 0, B: 1成员被推到数组的末尾。 什么是这些成员,以及在这个过程中发生了什么, .length属性logging2而不是4?