問題タブ [npm-link]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
7330 参照

javascript - npmリンクを使用してAngularライブラリの「モジュールが見つかりません」エラーを修正するには?

Javascript ライブラリの Angular ラッパーをビルドしようとしていますが、「モジュールが見つかりません」というエラーが発生します。Javascript ライブラリは開発中で、まだ NPM に公開されていないため、問題を引き起こしている可能性がある npm-link を使用していますが、よくわかりません。私のAngularバージョンは8.2.2です。

Javascript ソース ライブラリ

ソースライブラリ/index.js:

sourcelibディレクトリには、 package.jsonファイルとREADME.mdファイルも含まれています。期待どおりに npm-link が作成されます。

Angular ラッパー

以下は、Angular ワークスペース、ライブラリ、およびテスト アプリケーションを作成するために実行している Angular CLI コマンドです。

次に、 testlibを Javascript ライブラリにリンクします。

testlib内にモジュールとコンポーネントを生成します。

testcomp.component.ts :

public-api.ts :

次にsourcelibをビルドします。

コンソール出力は次のとおりです。

そして、 sourcelibへの npm-link を作成します:

Angular テスト アプリ

testlib-apptestlibにリンクします。

app.module.ts :

app.component.ts :

アプリを提供します。

結果

これのトラブルシューティングに多くの時間を費やしましたが、解決策を見つけることができませんでした。どんな助けでも大歓迎です。

0 投票する
0 に答える
442 参照

node.js - tarball としてリリースされた Oclif cli: 「npm リンク」を記述せずにコマンドを bashRc に自動リンクする方法は?

oclif でビルドされた cli を tarball としてリリースしようとしています。ローカル環境では、コードをコマンドにリンクするために npm link を記述する必要があります。しかし、本番環境では、ユーザーがzipをダウンロードした後に端末を開いてnpmリンクを書き込むことを望んでいません。

「npm install」が呼び出されない限り、npm はインストール前のスクリプトを実行できないようです。シェル スクリプトを作成するのは良い解決策のように思えますが、ユーザーはこのスクリプトを手動で実行する必要があります。ユーザーがzipをダウンロードした後、この「npmリンク」を自動的に実行する方法が本当にないのだろうか。Oclifには何かがあると確信していますが、ドキュメントhttps://oclif.io/docs/releasesで見つけることができませんでした。

ご協力いただきありがとうございます。ここにプロジェクトのpackage.jsonがあります

0 投票する
0 に答える
210 参照

node.js - Angular7 プロジェクトで Npm リンクが機能しない

Angular7 アプリケーションを作成しましたが、メインの Angular アプリケーションに別の Angular アプリケーションをウィジェットとしてインストールする必要があります。

以前npm-linkは、ウィジェットの Angular アプリケーションをメインの Angular アプリケーションにリンクしていました。

手順npm link

  1. Main Project フォルダの cmd で Ran コマンドnpm link ../ol-core-widget

ol-core widgetプロジェクトはメイン プロジェクトにリンクされており、そのol-core-widgetファイルを更新するnode_modules/と、メイン プロジェクトでも更新されます。しかし、メイン プロジェクトが からファイルにアクセスしようとするとol-core-widget、失敗します。

  1. その後、 を実行しましnpm installたが、すべてのリンクが削除されました。

ウィジェット アプリケーションに変更を加えた場合は、そのプロジェクト用のファイルを作成し、.tgzそれをメインの角度アプリにインストールする必要があります。

バージョン情報:

  • npm6.4.1
  • ノード10.13.0
  • Angular CLI7.0.3
0 投票する
3 に答える
9938 参照

typescript - 開発用に TypeScript を使用して記述されたモジュールで npm リンクを使用するには?

TypeScript と Webpack を使用して lib を構築しています。

このライブラリを開発するために、別のテスト プロジェクト (JS を使用して記述) を作成し、npm link <package-name>.

問題は、リンクがビルド ファイルにつながりnpm run build、変更を加えるたびに実行する必要があることです。

ソース ファイルへのリンクが必要で、ライブ リロードが必要です。出来ますか?それを可能にするために、TS を使用してテスト プロジェクトを作成する必要がありますか?

ライブラリpackage.json:

ライブラリのコードhttps://github.com/kozakdenys/qr-code-styling/tree/v1

テスト プロジェクトのコードhttps://github.com/kozakdenys/qr-code-styling-site

PS私も試してみ"module": "src/index.ts"ましたpackage.jsonが、テストプロジェクトでエラーが発生しますUncaught Error: Cannot find module './core/QRCodeStyling'