まず、main.js
にrequire
の問題があると思います。
main.js
た場合は、このrequire
があります
require('./level');
Browserifyがメインバンドルでlevel.js
を含むことになります。
browserify --require ./level.js:level.js > bundle-level.js
モジュールのために使われている名前です。理由は、このコマンドで:
を次の名前があることです。そして、このコマンドで:require
は間-バンドルrequire
で実行時に解決されるため、
browserify --exclude level.js main.js > bundle-main.js
あなたは、それがrequire('level.js')
を見たとき、それが何をバンドルしないことをBrowserifyを語っています。
(通常のJavaScriptファイルは、あまりにも、.js
をオフのままその場合、と)あなたがrequire
に非相対名を使用する必要があります。
browserify --require ./level.js:level > bundle-level.js
browserify --exclude level main.js > bundle-main.js
を次にmain.js
でrequire
は次のようになります。
const level = require('level');
あなたはnum3
とnum4
をエクスポートする場合は、あなたがこのようなlevel.js
で行うことができます。
exports.num3 = require('./num3');
exports.num4 = require('./num4');
そしてmain.js
にあなたがして持っているでしょう:
const level = require('level');
console.log(level.num3);
console.log(level.num4);
をあなたは(Browserifyがエミュレート)ノードのモジュール解決メカニズムに興味があるなら、それはhereを説明しています。 --require
と--exclude
Browserifyオプションは、基本的にそのメカニズムを無効にし、実行時にバンドル間で解決するようにBrowserifyに指示します。
したい場合にも、あなたは束の間に-ing require
のための複数のモジュールを指定することができます。
browserify \
--require ./num3.js:num3 \
--require ./num4.js:num4 \
--require ./level.js:level > bundle-level.js
browserify \
--exclude num3 \
--exclude num4 \
--exclude level main.js > bundle-main.js
そしてmain.js
中を:
const level = require('level');
const num3 = require('num3');
const num4 = require('num4');
は、 '「(何を必要としている./レベル2 '); '? 'level2'はあなたのファイルシステムスニペットのファイルに対応していないようです。あなたは 'require( './ level');'? – cartant
'num'ファイルがどのディレクトリにあるのかは疑問から分かりません。そして、' level'によって 'num3'と' num4'を 'main'に渡す必要がありますか?残念ながら、明らかではありません。 – cartant
@cartant。はい、それらは同じフォルダにあります。はい、私はnum3とnum4をレベルを介してメインに渡したいと思います – olo