首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Typescript - Front -我希望合并静态导入,但不合并动态导入

Typescript - Front -我希望合并静态导入,但不合并动态导入
EN

Stack Overflow用户
提问于 2018-09-23 09:54:56
回答 1查看 81关注 0票数 0

我想合并一些文件(具有静态导入的文件),但有些文件不需要合并(具有动态导入的文件)。

我怎么才能告诉typescript呢?

该演示包含4个文件,其中一个索引包含main()函数,以及3个类A、B和C。

当前typescript配置:

代码语言:javascript
复制
{
  "compilerOptions": {
    "allowJs": true,
    "target": "es2017",
    "module": "esnext",
    "outDir": "lib",
    "sourceMap": false,
    "strict": true,
    "noImplicitAny": false,
    "removeComments": true,
    "lib": [
      "esnext"
    ],
  },
  "compileOnSave": true,
  "include": [
    "src/**/*.ts",
    "src/**/*.js"
  ],
  "exclude": [
    "node_modules",
    "old"
  ]
}

src/index.ts

代码语言:javascript
复制
'use strict';
//@ts-check

import { C } from './c/c'; // I want this one to be merged in index

export const main = async () => {
  const c = new C();
  c.log();
}

main();

src/c.ts

代码语言:javascript
复制
'use strict';
//@ts-check

import { B } from '../b/b'; // I want this one to be merged in c, so in index

export class C {

  async log() {
    const A = await import('/' + 'a.js');
    const a = new A();
    a.log();
    const b = new B();
    b.log();
  }
}

源/b.ts

代码语言:javascript
复制
'use strict';
//@ts-check

export class B {

  async log() {
    console.log('b');
  }
}

src/a.ts

代码语言:javascript
复制
'use strict';
//@ts-check

export class A {

  log() {
    console.log('a');
  }
}

目前我得到的是:

代码语言:javascript
复制
- lib/a/a.js
- lib/b/b.js
- lib/c/c.js
- lib/index.js

但我想:

代码语言:javascript
复制
- lib/a.js // Apart from index, because it is dynamically imported
- lib/index.js

有什么想法吗?

有没有什么装饰器可以告诉typescript把c和b合并到索引中,然后把a放在一边?

尽可能地,我不想添加任何构建层(比如webpack),只使用typescript。

EN

回答 1

Stack Overflow用户

发布于 2018-09-24 00:56:22

我确信只有TypeScript编译器是无法做到这一点的。(您可以使用项目引用和outFile手动合并文件组,但您仍然需要一个AMD或SystemJS模块运行时。)您将需要使用单独的工具,如Webpack。这是理所当然的,但重要的是TypeScript团队的意见。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52462324

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档