1

rollupjsを使用して、すべてを1つのファイルにバンドルしようとしています。

main.jsファイル:

import * as ex from 'example-export';

ex.alertMe();

example-export.jsファイル:

export function alertMe() {
    alert('alert!');
};

以下のコマンドとその応答:

karl@karl-ux303ln:~/dev/sketch/experiment/socketio$ rollup ./public/js/main.js --output ./public/js/bundle.js --format iife --sourcemap inline
Treating 'example-export' as external dependency
No name was provided for external module 'example-export' in options.globals – guessing 'ex'

作成されたbundle.jsファイル:

(function (ex) {
'use strict';

ex.alertMe();

}(ex));
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVuZGxlLmpzIiwic291cmNlcyI6WyJtYWluLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGV4IGZyb20gJ2V4YW1wbGUtZXhwb3J0JztcblxuZXguYWxlcnRNZSgpOyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFFQSxFQUFFLENBQUMsT0FBTyxFQUFFLDs7In0=

example-exportモジュールがbundle.jsファイルに含まれることを期待していました。これは本当に新しいものなので、インターネットにはこれの適切な例がありません.

--nameこの問題は引数https://github.com/rollup/rollup/wiki/Command-Line-Interface#usageと関係があると思います。しかし、それがどのように使用されることになっているのかわかりません。複数のエクスポートとインポートがある場合、どのように見えるでしょうか?

4

2 に答える 2

4

相対パス

ファイルが同じディレクトリにある場合:

import * as ex from './example-export';

NODE_PATH経由

NODE_PATH 環境変数が設定されている場合は、そこからパスを追加できます。

  • NODE_PATHが等しい場合/home/karl/myprojects/mynodeproject/
  • アクセスしようとしているライブラリは次の場所にあります/home/karl/myprojects/mynodeproject/src/lib/my_library.js
  • そして、現在インポートしようとしているあなたが書いているファイルmy_library/home/karl/myprojects/mynodeproject/src/index.js

次に、で次を使用できますindex.js

import * as ex from 'src/lib/example-export';
于 2016-08-25T19:44:50.183 に答える
2

ロールアッププレイグラウンドページで例を試しましたが、機能させるために変更する必要があったのは

import * as ex from 'example-export';

import * as ex from './example-export';

ここを見てください

于 2016-08-25T19:45:28.420 に答える