【发布时间】:2016-12-22 23:24:29
【问题描述】:
export * form 'some-library'
export * from './myOverrides'
// error: [ts] Module 'some-module' has already
// exported a member named 'someFunc'.
// Consider explicitly re-exporting to resolve the ambiguity.
import * as SomeLib from 'some-library'
import * as MyOverrides from './myOverrides'
export { ...SomeLib, ...MyOverrides } // syntax error
const Overridden = { ...someLib, ...MyOverrides } // works
export { ...Overridden } // syntax error
我想避免挑选所有命名的导出只是为了重新导出它们;
import { a, b, c, d, e, ..... } from 'some-library'
export { a, b, c, d, e, .... }
export * from './myOverrides'
【问题讨论】:
-
据我所知,没有干净的方法可以做到这一点,也没有任何关于未来这样做的建议。 (不过看起来确实很有用!)
-
嗨@JKillian!,请参阅下面的答案。我挖掘了一些问题并找到了它。 :)
-
嘿@unional! :) 是的,解决方案可以满足您的需求,这很好!但是,您仍然必须单独选择覆盖。我找不到一种方法,您可以在不专门命名它们的情况下导出覆盖。
-
确实如此。但至少我只能为覆盖而不是原始库做到这一点。所以应该只有几个(手指交叉)。 :)
标签: javascript typescript ecmascript-6