2

Node.js / Express / Angular2 / typescript (IDE=Visual Studio) アプリのコンテキストで、(ディレクティブで使用するために) サード パーティの .js ユーティリティ (packery) をクライアント側にロードしようとしています。誰かがタイプスクリプト定義を作成しました。d.ts ファイルは次のようになります。

declare module "packery" {
    interface PackeryOptions {  stuff...  }
    class Packery { stuff .... }
    export = Packery;
}

この d.ts ファイルを参照し、ブラウザーに .js パッカリー スクリプトの場所を伝えてから、モジュールを次のようにインポートします。

import Packery = require('packery');

これは問題なくコンパイルされます。ただし、実行時に、ブラウザはhttp://localhost/packeryで「packery」を見つけようとします (そして失敗します) 。これは、私がクライアントで行った次のような他のインポート ステートメントとは対照的です。

import {Http, HTTP_PROVIDERS} from 'angular2/http';

どちらが機能しますか-私が提供した唯一の2つの情報は、packeryと同様に、d.tsファイルと.jsファイルの場所でした. しかし、私は何かが欠けているに違いありません。ファイルの場所とリンクの多くの組み合わせを試しましたが、うまくいきません。「packery」への適切なリンクを取得するにはどうすればよいですか?

ありがとう!

4

2 に答える 2

0

型付けは、型付き言語で書かれていない js ライブラリの空の定義です。これらは IDE のヒントなどの開発でのみ役立ちます。アプリでは、通常どおりライブラリを使用し、index.html に js ファイルを追加するか、js ファイルをロードします。

于 2016-01-15T06:34:09.507 に答える