请教 typescript 能否继承其他库中的类时,不讲该基类编译进当前项目

2016-10-09 10:46:57 +08:00
 meinqy

需求是这样的,用 typescript 写了几个组件 A_lib,b_lib,c_lib, 他们都依赖于一个基类 Base ,这些类都在同一个命名空间下 mop 。

如果每个组件都将 Base 编译进来的话,虽然没有什么副作用,但感觉总是怪怪的,请问有木有方法只引用不编译?

1680 次点击
所在节点    问与答
7 条回复
gucheen
2016-10-09 10:54:45 +08:00
并不能,可以考虑使用 uglifyjs 移除 dead code
crysislinux
2016-10-09 10:56:36 +08:00
为什么感觉怪。你是想要 c 语言的那种引用头文件的感觉么。。那人家也是要链接的。总之用了的符号要能够找到
meinqy
2016-10-09 11:25:24 +08:00
@gucheen 再次请教下,因为如果不编译 Base 时,由于存在 命名空间 所以需要修改代码在包函数中传入 Base , 这样 uglifyjs 可以做到么

@crysislinux 就是类似 c 的动态库链接的效果哈,
crysislinux
2016-10-09 11:33:07 +08:00
@meinqy 最终基类肯定要编译的。如果你指的是在 bundle 过程中避免每次编译的话,应该是可以的,比如 webpack 的 dll 插件
meinqy
2016-10-09 11:39:58 +08:00
@crysislinux 可能我没有说清楚,所有组件以及 基类 Base 都会编译到单独的 js 文件中,使用时要么使用工具合并编译后 js 文件,要么直接在 html 引用需要使用的组件即可。
crysislinux
2016-10-09 11:41:01 +08:00
@meinqy 应该可以, webpack 的 multi entry 就可以做这个事情。
meinqy
2016-10-09 12:20:52 +08:00
已使用 d.ts 解决,
感谢:

@crysislinux
@gucheen

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/311316

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX