APIとのインターフェースを少しすっきりさせるために小さなnpmライブラリを作成しようとしています。私のフォルダ構造は次のとおりです...
dist/
index.js
src/
index.js
endpoints/
endpoint1.js
package.json
webpack.config.js
私のsrc / index.jsファイル内にあります。
import {endpoint1} from './endpoints'
module.exports = class lib {
...
}
私は、ときにビルドを実行NPM(これは走るのWebPACK --display-エラーの詳細--mode生産)のWebPACKは大きなというエラースローモジュールが見つかりません」エラー:中にできない決意『./endpoints'』私の\プロジェクト\ディレクトリを\ src '。
私のwebpack.config.jsファイルは現在次のようになっています...
const path = require('path');
module.exports = {
mode: 'production',
entry: path.join(__dirname, '/src/index.js'),
output: {
path: path.resolve('dist'),
filename: 'index.js',
libraryTarget: 'commonjs2'
},
module: {
rules: [
{
test: /.js?$/,
exclude: /(node_modules)/,
use: 'babel-loader'
}
]
},
resolve: {
modules: [
path.resolve(__dirname, 'src/endpoints')
],
extensions: ['.js']
}
};
以前に同様の質問があったことがわかりますが、リストされている解決策がうまくいかないようです。ルーキーエラーが発生した場合に備えて投稿したいと思いました。さらに情報が必要な場合は、言ってください!かなりテキストの壁ならごめんなさい。ありがとう。
正しいインポートは次のようになります。
import endpoint1 from 'endpoint1';
を使用しresolve.modules
て、そのフォルダー内の非相対パスを検索するようにWebpackに指示します。モジュール名は「enpoint1」です。
ただし、実際には、プロジェクト全体で使用するライブラリでのみこれを行う必要があります。エンドポイントの場合、相対インポートが適切です。
import endpoint1 from "./endpoints/endpoint1";
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加