【问题标题】:Can't get gh-pages to work with Angular project无法让 gh-pages 与 Angular 项目一起使用
【发布时间】:2016-04-25 13:09:15
【问题描述】:

我正在开发一个 Angular 项目,并希望通过 GitHub 和 gh-pages 托管该项目。

由于 index.html 文件不在根目录中,因此我从我的 master 中创建了一个空分支并将其命名为 gh-pages。然后我将我的文件复制到新分支中,以便 index.html 文件位于根目录中。

我也在使用 Grunt,所以我也将 grunt 生成的 app.js 文件复制到了根目录中。如果我转到http://kelseysteele.github.io/votm3/#/home,我现在可以在浏览器中看到该项目,但是导航栏不见了,其他页面,如http://kelseysteele.github.io/votm3/#/overview,无法正常工作。

我已经为此困扰了几天,非常感谢任何帮助。

【问题讨论】:

  • 检查您的相对网址,因为您的项目文件包含在 github 上的 votm 文件夹中。

标签: javascript angularjs git github github-pages


【解决方案1】:

检查你的控制台,你会看到错误:GET http://kelseysteele.github.io/data/overview-data.json 404 (Not Found)

在此处修复网址:https://github.com/KelseySteele/votm3/blob/master/src/votm3/Scripts/controllers/overview-controller.js#L10

【讨论】:

    【解决方案2】:

    因为您使用的是 grunt,所以您需要在提供文件之前构建项目。这将使文件和代码模块在提供 index.html 之前正确构建。您可以使用的一个流行模块是https://github.com/tschaub/grunt-gh-pages,它可以让您的构建正常运行。

    【讨论】:

    • 感谢您提供此模块的链接。似乎这是要走的路,但我在安装插件时遇到了麻烦。当我在节点命令提示符下运行“ls”时,我在计算机的主目录中看到“grunt-gh-pages@1.0.0”,但它似乎不在项目目录中。当我运行 grunt在 Visual Studio 中,我收到以下错误:“找不到本地 Npm 模块‘grunt-gh-pages’。是否已安装?”任何有关如何解决此问题的想法将不胜感激。谢谢!
    • 您是否安装了带有npm install grunt-gh-pages --save-dev 的grunt-gh-pages 并在您的gruntfile.js 中执行了grunt.loadNpmTasks('grunt-gh-pages');?如果是这样,您应该会在 package.json 文件中看到 grunt-gh-pages 作为开发依赖项的一部分出现。
    • 再次感谢!那确实摆脱了“本地 Npm 模块 'grunt-gh-pages'”错误。但是,现在我似乎又被卡住了。我添加了 grunt.loadNpmTasks('grunt-gh-pages') 和 grunt.registerTask('deploy', ['gh-pages']);到 gruntfile.js 文件并将 grunt.initConfig 中的基本选项更改为“src”。现在我收到一条错误消息:“致命错误:'base' 选项必须是现有目录”。 src 文件似乎是我的 index.html 文件所在的目录,那不应该是基础吗?我查看了很多不同的来源,但没有任何帮助。
    猜你喜欢
    • 2018-02-02
    • 2021-05-11
    • 1970-01-01
    • 1970-01-01
    • 2021-05-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-09-17
    相关资源
    最近更新 更多