2

任务是运行一个应用程序,该应用程序由yeoman使用angular-fullstack-generator创建,并带有phonegap

对于任何感兴趣的人,这些是我为此找到的最有希望的教程:

因此,第一个教程引导我找到了yeoman 团队使用angular-generator的工作解决方案。但是现在使用 angular-fullstack-generator 我遇到了以下问题。控制台告诉我:

Failed to load resource file:///app/45eec174.app.css
Failed to load resource file:///app/f9250ffb.vendor.js
Failed to load resource file:///app/90992454.app.js
Failed to load resource file://www.google-analytics.com/analytics.js

所以到目前为止我的怀疑是<base href="/">index.html. 类似于这个SO-question。简单地删除它是没有选择的。

现在我对 grunt 的理解是有限的,但为什么它以给定的方式工作grunt serve呢?

我将如何解决这个问题以使其与phonegap一起工作?

4

2 回答 2

2

我也有同样的使命。但还没有让它发挥作用。但是,作为第一步,我设法将 UI 作为独立应用程序运行。

你的猜测是正确的

在加载模板时,Angular 在整个应用程序中使用此基本标记。同时,包含base标签也不会找到index.html中包含的资源。我做了以下

  1. 从 index.html 中删除了基本标记
  2. 在角度配置中做了以下

    $locationProvider.html5Mode({ enabled: true, requireBase: false });

step#2,帮助 Angular 在 html5mode 下工作,而不需要基本标签。

  1. 以http://backendurl.com:port/api/service形式更改所有后端服务调用

  2. 不要从服务器提供 socket-io-client

  3. 在客户端安装 socket-io-client 作为 Bower 组件

  4. 将 socket-io-client 与后端 url 连接

  5. 为 dist 构建全栈(grunt build:dist)

  6. 为 \dist\public 创建到 cordovaapppath\www 的符号链接

  7. 构建科尔多瓦应用程序(科尔多瓦构建安卓)

你完成了。我已经成功地使用 phonegap 创建了我的应用程序。我创建了一个从 Angular 全栈扩展的 github 项目。 https://github.com/kannach/AFSPphonegap

请尝试并做出贡献。

于 2015-09-08T12:41:39.443 回答
0

现在,在完成所有@Chandru 指南之后,如果您在4.0.0 Beta 2 Webpack 支持之后使用 Generator Angular Fullstack 版本,则必须再做一件事:

在 webpack.make.js 中更改行:

publicPath: BUILD || DEV || E2E ? '/' : `http://localhost:${8080}/`,

publicPath: BUILD || DEV || E2E ? '' : `http://localhost:${8080}/`, 
于 2017-01-08T16:43:58.293 回答