【问题标题】:using systemjs-angular-loader.js in production - gives 404在生产中使用 systemjs-angular-loader.js - 给出 404
【发布时间】:2017-10-06 16:34:45
【问题描述】:

我正在使用最新的 angular / quickstart 项目,它使用 systemjs-angular-loader.js 来加载应用程序相关的 html 模板(不需要 moduleId 属性)。

该项目在开发/测试中运行良好(使用“npm start”服务页面)。但是,当使用 gulp 构建生产环境时,项目将恢复为在根文件夹(而不是应用程序相关文件夹)中查找 html 模板。

在生产中使用/构建“systemjs-angular-loader.js”是否需要任何特殊步骤?我能找到的对 system-angular-loader.js 的唯一引用是404s after updating to systemjs-angular-loader.js,我已经关注了它,但这并没有帮助。

为简洁起见,我没有包含我的 gulpfile.js,但我正在使用 gulp-typescript 和 systemjs-builder(以及其他)。

【问题讨论】:

标签: angular gulp systemjs-builder


【解决方案1】:

这可能不是您的情况的解决方案,但对于其他在运行 karma 时遇到相同问题的人,您需要更新到最新的 systemjs-angular-loader.js。

最近进行了一项更改以修复未加载的外部模板:linkissue

要使此修复生效,请确保模板文件与引用它的组件位于同一文件夹中,并且您有一个格式为

的模板 url

templateUrl: './myComponent.component.html'

这是因为 systemjs-angular-loader 会检查 templateUrl 中的点

  if (url.startsWith('.')) {
    resolvedUrl = basePath + url.substr(1);
  }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-02-16
    • 1970-01-01
    • 2023-03-26
    • 1970-01-01
    • 2016-06-28
    • 1970-01-01
    • 2017-10-24
    • 2016-07-01
    相关资源
    最近更新 更多