2016-08-18 7 views
3

webappを使用してコンパイルする、typescriptで書かれた反応アプリケーションがあります。今のところ、node_modulesのキーワードimportでライブラリをインポートできました。ウェブパック構築アプリケーションのnpmレジストリにないライブラリをインポートするにはどうすればいいですか?

しかし、npmレジストリにないライブラリがいくつかあります。だから私はこれらのライブラリのnpmインストールを行うことはできません。たとえば、Papa Parseは、npmパッケージが見つからないものの1つです。彼らは通常、自分のTypescriptファイルにインポートすることができない、縮小されたjsファイルのみを提供します。構築するためのWebPACKを使用してアプリケーションの場合

は、どのように私は私のコードでNPMレジストリ上にないライブラリを使用することができますか?

+0

あなたは –

答えて

2

を使用することができますあなたのプロジェクトのどこかに入れてください。vendorまたはlibというディレクトリに置くことをお勧めします。

それは、例えば、簡単ですのでimport文は、使用するモジュールへの相対パスを使用することができますあなたは空想取得したい場合は、相対パスをうまくする必要はありませんように、あなたはWebPACKのコンフィグでresolve.aliasを使用することができます

// src/foo.js 
import './../vendor/some-lib'; 

:あなたはvendor/some-lib.jsでサードパーティのモジュールを置けば、あなたがそれをインポートします。

// webpack.config.js 
const path = require('path'); 

// ... 
resolve: { 
    alias: { 
    vendor: path.resolve(__dirname, 'vendor') 
    } 
}, 

// src/foo.js 
import 'vendor/some-lib'; 
+0

相対パスでライブラリをインポートしようとしましたが、何とかライブラリにアクセスできません。 jQueryをインポートした場合と同じように、私のコードで 'jQuery()'や '$'を使用することはできません。コードの先頭にlibをインポートした後、もう何をする必要がありますか? – Carven

0

インポートできない場合は、requireを使用するとwebpackがバンドルに組み込みます。

require("PapaParse"); 

注: - あなたはWebPACKのからのjsファイルを解決しているならば、あなたがダウンロードする必要があります、npmパッケージを持っていないことを何のために単に

import "papaparse"

+0

.... WebPACKの中でそれらをシムする必要があります。しかし、私はちょうど ''(「PapaParse」)必要がない場合、どのようにWebPACKのライブラリーのために解決するためにどのパスを知っているために起こっていますか? – Carven

+0

ファイルを要求する方法はたくさんあります。ファイルがモジュールであるか、ビルドに含める必要があるかによってファイルが異なります。 [webpack requireの詳細を読む](https://webpack.github.io/docs/resolving.html) –

1

あなたはこのようにgit-ホストされているライブラリをインストールすることができます。すべてがハッシュ後にコミットハッシュまたはタグのどちらかなければならないこと

npm install git+ssh://[email protected]:mholt/PapaParse.git#4.3.0 

は注意を。 https://github.com/mholt/PapaParse/releases

ハッシュを省略すると、最新のバージョンが取得されますが、誰かがコードベースに新鮮なnpm installを実行するたびに注意してください。バージョンが変更されました。

+1

クール。これは確かに素晴らしいテクニックのように見えます!私はこれが可能であることを知らなかった!私はこれを試してみよう! – Carven

+0

は:]私はこの部分を追加する必要があります//リンク 'ます。https:// githubの「[email protected]:mholt/PapaParse.git」あなただけのようにもhttpsを使用することができるかもしれSSHクローンリンク –

+0

からです。 com/mholt/PapaParse.git#4.3.0' ...私はそれを自分で試したことはありませんが –

関連する問題