developit / developit/microbundle

Cannot import external es6 module correctly

未关闭
#881 1 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看
主要语言
JavaScript
星标
8.1k
派生
358
PR 合并指标
30 天内没有已合并 PR

描述

I have a typescript project, the ts files are stored in different directories, they all import the same external module, like this:

/main.ts:

```
import * as ext from 'external';
import { g } from './lib/foo';
function f() {
g();
ext.func1();
}
```

/lib/foo.ts:

```
import * as ext from 'external';
function g() {
ext.func2();
}
```

I want to package main.ts into an ES6 module and store it in the same directory as external.js
After packaging, I expected to get this result:

main.js:

```
import * as ext from './external.js";
// blah blah
```

My packaging script looks like this:

```
microbundle -i main.ts --no-pkg-main -f modern --target web -o dist/main.js --external .*/external.js --alias external=./external.js

```

But I got this result:

```
import * as ext$1 from './external.js';
import * as ext from './lib/external.js';
```

I think this should be because the two ts files are in different directories and aliases are used, but what should be the correct way?

贡献指南

这个仓库没有索引到贡献指南

评估

这个 Issue 还没有评估数据。

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。