Ionic 2 build dev失败:超出了最大调用堆栈大小

时间:2017-02-21 06:43:27

标签: javascript ionic-framework ionic2

我无法构建我的离子2 App。更改文件后服务工作。

在离子服务上,我收到以下错误消息:

[07:37:32]  build started ... 
[07:37:32]  transpile started ... 
[07:37:39]  build finished in 6.81 s 

然后,当我更改* .ts文件时,应用程序已构建并可以使用

[07:40:40]  transpile started ... 
[07:40:44]  build dev failed: Maximum call stack size exceeded 
[07:40:44]  ionic-app-script task: "build" 
[07:40:44]  RangeError: Maximum call stack size exceeded 
RangeError: Maximum call stack size exceeded
    at Object.binarySearch (/Users/huli/Documents/leseschlauapp/node_modules/typescript/lib/typescript.js:1327:26)
    at computeLineAndCharacterOfPosition (/Users/huli/Documents/leseschlauapp/node_modules/typescript/lib/typescript.js:4070:29)
    at Object.getLineAndCharacterOfPosition (/Users/huli/Documents/leseschlauapp/node_modules/typescript/lib/typescript.js:4089:16)
    at emitPos (*/node_modules/typescript/lib/typescript.js:35556:36)
    at emitStart (*/node_modules/typescript/lib/typescript.js:35598:13)
    at emitNodeWithSourceMap (*/node_modules/typescript/lib/typescript.js:44266:21)
    at emitNodeConsideringCommentsOption (*/node_modules/typescript/lib/typescript.js:44258:21)
    at emit (*/node_modules/typescript/lib/typescript.js:44240:17)
    at emitPropertyAccess (*/node_modules/typescript/lib/typescript.js:39200:17)
    at emitJavaScriptWorker (*/node_modules/typescript/lib/typescript.js:44393:32)

npm ERR! Darwin 16.1.0
npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "run" "ionic:build" "--"
npm ERR! node v7.4.0
npm ERR! npm  v4.0.5
npm ERR! code ELIFECYCLE
npm ERR! ionic-hello-world@ ionic:build: `ionic-app-scripts build`
npm ERR! Exit status 1

当我运行ionic build时,会显示以下错误消息:

{
  "name": "ionic-hello-world",
  "author": "Ionic Framework",
  "homepage": "http://ionicframework.com/",
  "private": true,
  "scripts": {
    "ionic:build": "ionic-app-scripts build",
    "ionic:serve": "ionic-app-scripts serve"
  },
  "dependencies": {
    "@angular/common": "2.2.1",
    "@angular/compiler": "2.2.1",
    "@angular/compiler-cli": "2.2.1",
    "@angular/core": "2.2.1",
    "@angular/forms": "2.2.1",
    "@angular/http": "2.2.1",
    "@angular/platform-browser": "2.2.1",
    "@angular/platform-browser-dynamic": "2.2.1",
    "@angular/platform-server": "2.2.1",
    "@ionic/storage": "1.1.7",
    "dragula": "^3.7.2",
    "ionic-angular": "2.0.0",
    "ionic-native": "2.2.11",
    "ionicons": "3.0.0",
    "ng2-dragula": "^1.2.2-0",
    "rxjs": "5.0.0-beta.12",
    "zone.js": "0.6.26"
  },
  "devDependencies": {
    "@ionic/app-scripts": "1.0.0",
    "typescript": "2.0.9"
  },
  "cordovaPlugins": [
    "cordova-plugin-whitelist",
    "cordova-plugin-statusbar",
    "cordova-plugin-console",
    "cordova-plugin-device",
    "cordova-plugin-splashscreen",
    "ionic-plugin-keyboard"
  ],
  "cordovaPlatforms": [
    "ios",
    {
      "platform": "ios",
      "version": "",
      "locator": "ios"
    }
  ],
  "description": "leseschlauapp: An Ionic project"
}

这是我的package.json,如果这可能有帮助

A = tuple(temp, temp)

1 个答案:

答案 0 :(得分:3)

似乎是一个TypeScript转换器错误

https://github.com/Microsoft/TypeScript/issues/2997

显然可能发生在像这样的事情上

public parent: Module | Class;

检查此类联合类型用法,或将您的打字稿升级到较新版本,如2.4。*