任务是运行使用angular-fullstack-generator yeoman创建的应用phonegap。
对于任何感兴趣的人,这些是我找到的最有前途的教程:
Getting Started with Mobile App Development with PhoneGap + Yeoman + AngularJS + Ionic
Quick Start Guide to PhoneGap+AngularJS。 (UI部分可以工作,但功能没有 - 使用基本设置)
Building PhoneGap Apps with AngularJS。 (似乎代码库在某些方面发生了变化,所以我真的没有让它工作)
因此,第一个教程让我找到了自由团队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一起使用?
答案 0 :(得分:2)
我正在执行同样的任务。但还是要让它发挥作用。但是,作为第一步,我设法将UI作为独立的应用程序运行。
你的猜测是正确的,
在加载模板时,整个应用程序的角度使用此基本标记。同时,包含基本标记将无法找到index.html中包含的资源。我做了以下
在angular config中执行以下操作
$ locationProvider.html5Mode({ 启用:true, requireBase:false });
步骤#2,帮助角度在html5mode中工作而不需要基本标记。
不从服务器提供socket-io-client
将socket-io-client安装为客户端的bower组件
使用后端网址连接socket-io-client
为dist构建fullstack(grunt build:dist)
为\ dist \ public创建一个符号链接给cordovaapppath \ www
构建cordova app(cordova build android)
请尝试贡献。
答案 1 :(得分:0)
目前,在完成所有@Chandru指南后,如果在版本4.0.0 Beta 2 Webpack support之后使用Generator Angular Fullstack版本,则必须再做一件事:
在webpack.make.js中更改行:
publicPath: BUILD || DEV || E2E ? '/' : `http://localhost:${8080}/`,
到
publicPath: BUILD || DEV || E2E ? '' : `http://localhost:${8080}/`,