Saya baru mengenal TypeScript dan mencoba memulai proyek hapi.js tetapi saya mendapatkan kesalahan saat mencoba require('boom') dalam kode saya

Duplicate identifier 'Boom'

/// <reference path="../typings/tsd.d.ts" />

var config = require('../config'),
    User = require('../models/user'),
    Boom = require('boom'),
    joi = require('joi');

Tsd.json saya

{
  "version": "v4",
  "repo": "borisyankov/DefinitelyTyped",
  "ref": "master",
  "path": "typings",
  "bundle": "typings/tsd.d.ts",
  "installed": {
    "node/node.d.ts": {
      "commit": "846a250e0a6f5e6adf6347ee4ca442a9d1abd8fc"
    },
    "hapi/hapi.d.ts": {
      "commit": "846a250e0a6f5e6adf6347ee4ca442a9d1abd8fc"
    },
    "bluebird/bluebird.d.ts": {
      "commit": "846a250e0a6f5e6adf6347ee4ca442a9d1abd8fc"
    },
    "boom/boom.d.ts": {
      "commit": "846a250e0a6f5e6adf6347ee4ca442a9d1abd8fc"
    },
    "pg/pg.d.ts": {
      "commit": "846a250e0a6f5e6adf6347ee4ca442a9d1abd8fc"
    }
  }

Saya telah menambahkan boom dan hapi ke tsd saya - jika referensi hapi boom juga apakah itu menyebabkan semacam kesalahan melingkar?

Bagaimana saya harus mereferensikan perpustakaan ini dalam TypeScript?

2
MonkeyBonkey 13 Mei 2015, 00:45
 – 
curpa
13 Mei 2015, 01:53

1 menjawab

Jawaban Terbaik

Jika Anda tidak meletakkan import atau export global dalam file Anda, maka sejauh menyangkut TypeScript, file Anda adalah bagian dari namespace global dan oleh karena itu Anda mendapatkan tabrakan nama di Boom. Perbaiki: gunakan import/require alih-alih var/require.

import Boom = require('boom');

Untuk mempelajari lebih lanjut : https://www.youtube.com/watch?v=KDrWLMUY0R0&hd=1

2
basarat 13 Mei 2015, 02:22