Tag: 打字稿

合并名称空间和variables的声明

我正在尝试为第三方库node-tap创build声明文件。 简化的问题是:对于图书馆 // node_modules/a/index.js function A() { /* … */ } module.exports = new A(); module.exports.A = A; 什么是一个正确的*.d.ts声明文件,以允许下面的代码编译成功? // test.ts import * as a from 'a'; import {A} from 'a'; function f(): A { return a; } 提到将A作为types是重要的,尽pipe在这个简单的例子中可以省略它。

angular度快速启动失败的业务testing失败

官方的Angular quickstart在Windows 10的全新安装之后无法运行业绩testing。我input了以下4个命令,而没有其他的东西: C:\projects\temp>git clone https://github.com/angular/quickstart.git C:\projects\temp>cd C:\projects\temp\quickstart C:\projects\temp\quickstart>npm install …install logs omitted for brevity C:\projects\temp\quickstart>npm start …app launched successfully, but logs omitted for brevity C:\projects\temp\quickstart>npm test …Error shown in complete logs below 最终命令后得到的完整错误信息如下: C:\projects\temp\quickstart>npm test > angular-quickstart@1.0.0 pretest C:\projects\temp\quickstart > npm run build > angular-quickstart@1.0.0 build C:\projects\temp\quickstart > tsc -p src/ > angular-quickstart@1.0.0 test […]

TypeScript导入与ES6对象解构

随着TSimport,我相信我可以做到这一点: import {foo as bar} from 'foo'; 与JS或TypeScript的ES6对象解构 – 有没有办法以同样的方式重命名“导入的值”? 例如, const {longVarName as lvn} = x.bar;

如何在没有Internet的情况下安装最新版本的Typescript(离线)?

我在我的家中有互联网连接,我可以用这个命令安装最新版本的TypeScript : npm install -g typescript ,但不幸的是在我的工作场所没有互联网(实际上我们不允许使用互联网)。 除此之外,我GOOGLE了但似乎没有Typescript 离线安装程序 。 我的问题是如何处理这个问题? 我是全新的npm和一步一步的解决方法将不胜感激。

如何使用express和angular 2(打字稿)在待办事项列表中编辑标题

我使用express和Angular 2 – todo列表在web上创build我的第一个应用程序。 现在我有事件来添加新的任务,删除和更改checkbox,但我不知道如何编辑标题通过点击,例如,项目或button上的“ 编辑 ”。 Task.ts export class Task{ title: string; isDone: boolean; } 文件html tasks.component.html <div *ngFor="let task of tasks" class="todo"> <button class="delete icon"> <i class="material-icons">delete</i> </button> <button class="checkbox icon" (click)="updateStatus(task)"> <i class="material-icons">{{task.isDone ? 'check_box' : 'check_box_outline_blank' }}</i> </button> <span class = "title"> {{task.title}}</span> <div class="actions" (click)="deleteTask(task._id)"> <button class="delete icon"> <i class="material-icons">delete</i> […]

用Objection.js中的多对多插入

我有以下怀疑,我无法在objection.js文档中find清楚的答案。 我有以下2个模型: export class Language extends BaseId { name: string; static tableName = 'Languages'; static jsonSchema = { type: 'object', required: ['name'], properties: { name: { type: 'string', minLength: 1, maxLength: 80 } } }; } export class Country extends BaseId { name: string; languages: Language[]; static tableName = 'Countries'; static jsonSchema = { type: […]

Angular 2实时刷新应用程序

我是Angular和Nodejs的新手,我正在尝试构build一个平均堆栈的encryption货币交换应用程序。 我创build了一个nodejs后端从API获取当前汇率并将其显示在html中。 另外我创build了货币兑换组件并且工作正常。 我需要每5或10秒更新html和货币兑换组件。 我的第一个问题是,如果在后端或前端做得更好,其次是我如何做到这一点。 这是我的代码: api.js const express = require('express'); const router = express.Router(); // declare axios for making http requests const axios = require('axios'); const coinTicker = require('coin-ticker'); /* GET api listing. */ router.get('/', (req, res, next) => { res.send('api works'); }); router.get('/posts', function(req, res, next) { coinTicker('bitfinex', 'BTC_USD') .then(posts => { res.status(200).json(posts.bid); […]

在Typescript中有条件的默认导出

我有一个教程的以下JS代码: if (process.env.NODE_ENV === 'production') { module.exports = require('./configureStore.prod'); } else { module.exports = require('./configureStore.dev'); } configureStore.*.ts文件都有一个默认的导出: export default function configureStore(initialState?: State) { // … } 我想将以前的代码片段中的条件输出转换成TypeScript。 如果我只是离开代码,我得到一个编译时错误: error TS2306: File 'configureStore.ts' is not a module. 经过一些试验和错误,我可以得到以下编译: import {Store} from "redux"; import {State} from "../reducers"; let configureStore: (state?: State) => Store<State>; if (process.env.NODE_ENV === "production") […]

Express SSL身份validationfunction缺失?

我试图在Express中使用SSL身份validation,如http://intown.biz/2016/11/22/node-client-auth/中所述 。 我们使用TypeScript作为我们的服务器代码(除了客户端Angular代码)以获得强大的打字效果。 我们使用Express 4.14.1,@ types / express“:”^ 4.0.36“ 上面的链接(与大多数服务器端NodeJS一样)是JavaScript而不是TypeScript。 链接中有一段代码,如下所示: app.use(function (req, res, next) { if (!req.client.authorized) { return res.status(401).send('User is not authorized'); } #examine the cert itself, and even validate based on that! var cert = req.socket.getPeerCertificate(); if (cert.subject) { console.log(cert.subject.CN); } next(); }); 链接中讨论的应用程序工作(他有一个链接下载项目)。 我的问题:最新的types(4.0.36)似乎没有req.client或req.socket.getPeerCertificate() 。 他们不可用在我的TypeScript代码(我们有Express导入/必需)。 另外,我尝试将TypeScript Request对象传递给普通的JavaScript函数,并且req.client和req.socket.getPeerCertificate()仍然是未定义的。 他们只是不在那里。 注意:我们也有Passport初始化。 我们正在使用它来validation我们的Web应用程序(客户端和内部REST […]

vscode intellisense node.js适用于.js文件 – 不是.ts文件

无法让智能感知工作.ts文件。 test.js var http = require('http'); http.[intellisense available] test.ts var http = require('http'); http.[no suggestions] 似乎没有阅读index.d.ts 这里是tsconfig.json : { "compileOnSave": true, "compilerOptions": { "target": "es5", "module": "commonjs", "sourceMap": true, "watch": true } } 有什么build议么。 真的要使用打字稿,但学习节点时需要提示。 不喜欢使用JavaScript。 谢谢。