【问题标题】:How to share TypeScript code correctly between Aurelia CLI projects?如何在 Aurelia CLI 项目之间正确共享 TypeScript 代码?
【发布时间】:2018-01-29 12:53:15
【问题描述】:

我正在尝试开发一个用 TypeScript 编写的本地 Node 包,我可以将它导入到同一解决方案中的多个 Aurelia CLI 项目中。

我在以下位置创建了一个示例解决方案:

https://github.com/sam-piper/aurelia-library

这展示了我迄今为止的进步 - 该工具反映了我们的开发基础架构(VS 2017 / ASP.NET Core / Aurelia CLI / TypeScript)。

共享导出在引用的 Aurelia 项目中正确编译,au build 也正在运行,没有报告错误,但文件未正确捆绑,导致个人出现大量 404 错误应用程序加载时的脚本文件。

基本上,我需要帮助才能完成最后一步。我不确定应该如何构建和构建共享项目,以便它与 TypeScript 编译和 Aurelia 捆绑兼容。

欢迎任何建议!

【问题讨论】:

  • 为什么不能使用 AMD 让它工作?它毫无问题地为我翻译了它。
  • 更重要的是,该应用程序对我来说运行良好,没有任何 404。我检查了应用程序包,您的共享项目在那里。这告诉我你的基本结构是正确的,我们确实应该关注为什么你不能转译到 AMD。
  • 谢谢,我刚刚在库项目中将模块格式更改为 AMD,它现在真的对我有用 - 这不是我第一次尝试 AMD,但我认为那是因为我没有'没有为包设置索引文件,所以我无法使用应用程序项目中的类型。感谢您的帮助。

标签: typescript aurelia


【解决方案1】:

解决方案只是将 Shared.Lib 项目中 tsconfig.json 中的模块输出更改为“amd”,没有其他更改(即,将 outDir 也设置为“dist”)。

index.ts 文件可以正确导出所有类型,并且 Aurelia 正确捆绑 AMD 格式以进行运行时部署。

我已经更新了存储库,以防有人想将其用作起点。

【讨论】:

    猜你喜欢
    • 2019-03-07
    • 2020-04-20
    • 1970-01-01
    • 2019-02-28
    • 1970-01-01
    • 2018-11-22
    • 2014-07-05
    • 1970-01-01
    • 2020-09-03
    相关资源
    最近更新 更多