developit / developit/microbundle

Multiple entry bundles

未關閉
#793 8 則留言 1 個 reaction 已指派 0 人 在 GitHub 檢視
needs more info question :grey_question:
主要語言
JavaScript
星號
8.1k
分支
358
PR 合併指標
30 天內沒有已合併 PR

描述

Hi. I'm following the example provided [here](https://github.com/developit/microbundle/issues/545#issuecomment-579869678) in order to bundle 3 different modules. The thing is that one of this modules requires the others, but when running `microbundle -f cjs src/*.ts --no-compress` the output doesn't preserve the `require` statements and instead bundle the dependencies inline.

I've created an example here https://github.com/nachaos/microbundle-example

Current output (using microbundle@0.13.0)
```js
// /dist/c.js
var a = 'a';

var b = 'b';

var lib = 'lib';

var c = function c(_c) {
return "" + a + b + _c + " - " + lib;
};

exports.c = c;
//# sourceMappingURL=c.js.map
```

Expected output
```js
// /dist/c.js

var a = require('./a');

var b = require('./b');

var lib = 'lib';

var c = function c(_c) {
return "" + a + b + _c + " - " + lib;
};

exports.c = c;
//# sourceMappingURL=c.js.map
```

Is there a way to configure microbundle in order to get what I expect?

Also, when trying with microbundle@0.12.3 this is the output. The `require` statements are preserved but with `.ts` file extensions, causing the usage of the module to fail.

```js
function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }

var a_ts = require('./a.ts');
var b = _interopDefault(require('./b.ts'));

var lib = 'lib';

var c = function c(_c) {
return "" + a_ts.a + b + _c + " - " + lib;
};

exports.c = c;
//# sourceMappingURL=c.js.map

```

貢獻指南

這個儲存庫沒有索引到貢獻指南

研究方向

從連結的 microbundle 範例開始,執行 `microbundle -f cjs src/*.ts --no-compress`,然後將產生的 `dist/c.js` 與 issue 中的預期輸出進行比較。完成標準是保留多入口 bundle 的 `require('./a')` 和 `require('./b')` 陳述式,並避免輸出 `.ts` 副檔名。

由索引模型根據 Issue 內容生成。

評估

技術堆疊
javascript, rollup, typescript
領域
build-system, tooling
Issue 類型
缺陷
難度
4/5
預估耗時
3-5 天
活躍度
停滯
描述清晰度
基本清楚
新手友好度
35/100

把新 issue 寄到你的電子郵件信箱

精選適合新手參與的 GitHub issue 摘要。