【问题标题】:Angular App not working on IOS devices, deployed on HerokuAngular App 无法在 IOS 设备上运行,部署在 Heroku 上
【发布时间】:2021-01-25 15:18:05
【问题描述】:

我使用 MEAN 堆栈(MongoDB、Express JS、Angular、Node JS)开发了一个应用程序,并将其部署在 Heroku 上。这是我网站的链接

https://vuies-portal.herokuapp.com/

由于某些奇怪的原因,它不适用于运行 IOS 的设备。它适用于安卓系统。 应用程序卡在加载屏幕上,永远不会带您进入主页,这仅适用于 IOS 设备。我无法确定这可能是什么原因。它可能与我导入的脚本或 Javascript 版本有关,不确定。有人可以帮忙吗?

Angular-Cli 版本是 8.0.2

我已经使用以下命令部署了应用程序:ng build --prod

这是我的 package.json 文件

{
  "name": "angular-src",
  "version": "0.0.0",
  "scripts": {
    "ng": "ng",
    "start": "ng serve",
    "build": "ng build",
    "test": "ng test",
    "lint": "ng lint",
    "e2e": "ng e2e"
  },
  "private": true,
  "dependencies": {
    "@agm/core": "^1.1.0",
    "@angular/animations": "~8.0.0",
    "@angular/cdk": "~8.2.3",
    "@angular/common": "~8.0.0",
    "@angular/compiler": "~8.0.0",
    "@angular/core": "~8.0.0",
    "@angular/forms": "~8.0.0",
    "@angular/material": "^8.2.3",
    "@angular/platform-browser": "~8.0.0",
    "@angular/platform-browser-dynamic": "~8.0.0",
    "@angular/router": "~8.0.0",
    "@auth0/angular-jwt": "^3.0.1",
    "@types/googlemaps": "^3.39.0",
    "angular-bootstrap-md": "^7.5.4",
    "angular-font-awesome": "^3.1.2",
    "bootstrap": "^4.4.1",
    "font-awesome": "^4.7.0",
    "hammerjs": "^2.0.8",
    "jquery": "^3.4.1",
    "popper.js": "^1.16.0",
    "rxjs": "~6.4.0",
    "save": "^2.4.0",
    "tslib": "^1.9.0",
    "zone.js": "~0.9.1"
  },
  "devDependencies": {
    "@angular-devkit/build-angular": "~0.800.0",
    "@angular/cli": "~8.0.2",
    "@angular/compiler-cli": "~8.0.0",
    "@angular/language-service": "~8.0.0",
    "@types/jasmine": "~3.3.8",
    "@types/jasminewd2": "~2.0.3",
    "@types/node": "~8.9.4",
    "codelyzer": "^5.0.0",
    "jasmine-core": "~3.4.0",
    "jasmine-spec-reporter": "~4.2.1",
    "karma": "~4.1.0",
    "karma-chrome-launcher": "~2.2.0",
    "karma-coverage-istanbul-reporter": "~2.0.1",
    "karma-jasmine": "~2.0.1",
    "karma-jasmine-html-reporter": "^1.4.0",
    "protractor": "~5.4.0",
    "ts-node": "~7.0.0",
    "tslint": "~5.15.0",
    "typescript": "~3.4.3"
  }
}

我的 angular.json 中的样式和脚本:

"styles": [
              "./node_modules/@angular/material/prebuilt-themes/indigo-pink.css",
              "./node_modules/bootstrap/scss/bootstrap.scss",
              "./node_modules/font-awesome/scss/font-awesome.scss",
              "./node_modules/angular-bootstrap-md/scss/bootstrap/bootstrap.scss",
              "./node_modules/angular-bootstrap-md/scss/mdb-free.scss",
              "src/styles.scss"
            ],
"scripts": [
              "./src/assets/particles/particles.min.js",
              "./node_modules/jquery/dist/jquery.min.js",
              "./node_modules/bootstrap/dist/js/bootstrap.min.js"
            ]

【问题讨论】:

  • 我使用 safari 进入 iphone 6 模拟器时出现错误 SyntaxError: Invalid regular expression: unrecognized character after (?。也许一些带有正则表达式的代码会有所帮助

标签: node.js angular heroku


【解决方案1】:

编辑package.json 以添加start npm 运行脚本:

    "start": "node server.js",

并确保在项目根目录中有server.js 文件。

本文描述了上述内容。: https://medium.com/@ryanchenkie_40935/angular-cli-deployment-host-your-angular-2-app-on-heroku-3f266f13f352

package.json 中添加post-install 命令

这在上面的文章中也有描述。

【讨论】:

    猜你喜欢
    • 2012-10-17
    • 2015-10-01
    • 2019-11-19
    • 2015-01-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-06-15
    • 2017-05-17
    相关资源
    最近更新 更多