[英]Ionic application able to run on browser but not working on Ionic DevApp
[英]ionic 4 build error when serving with --devapp
我已經部署了ionic4 + angular應用程序,該應用程序可在瀏覽器上成功運行,但是當嘗試在devapp上運行時會出現以下錯誤。 當我向離子服務提供--devapp標志時,角度構建失敗。
C:\Users\Surendra\Desktop\googlevision\googlevision\client>ionic serve --devapp
> ng.cmd run app:ionic-cordova-serve --host=0.0.0.0 --port=8100 --cordova-mock --consolelogs --consolelogs-port=53703
[ng] Project target does not exist.
[ng] Error: Project target does not exist.
[ng] at WorkspaceNodeModulesArchitectHost.getBuilderNameForTarget (C:\Users\Surendra\Desktop\googlevision\googlevision\client\node_modules\@angular-devkit\architect\node\node-modules-architect-host.js:15:19)
[ng] at RunCommand.runSingleTarget (C:\Users\Surendra\Desktop\googlevision\googlevision\client\node_modules\@angular\cli\models\architect-command.js:175:55)
[ng] at RunCommand.runArchitectTarget (C:\Users\Surendra\Desktop\googlevision\googlevision\client\node_modules\@angular\cli\models\architect-command.js:216:35)
[ng] at RunCommand.run (C:\Users\Surendra\Desktop\googlevision\googlevision\client\node_modules\@angular\cli\commands\run-impl.js:14:25)
[ng] at RunCommand.validateAndRun (C:\Users\Surendra\Desktop\googlevision\googlevision\client\node_modules\@angular\cli\models\command.js:137:39)
[ng] at process._tickCallback (internal/process/next_tick.js:68:7)
[ng] at Function.Module.runMain (internal/modules/cjs/loader.js:832:11)
[ng] at startup (internal/bootstrap/node.js:283:19)
[ng] at bootstrapNodeJSCore (internal/bootstrap/node.js:622:3)
[ERROR] ng has unexpectedly closed (exit code 1).
The Ionic CLI will exit. Please check any output above for error details.
package.json
{
"name": "blabla",
"version": "0.0.1",
"scripts": {
"ng": "ng",
"start": "ng serve",
"build": "ng build",
"build-prod": "ng build --prod",
"postbuild-prod": "bread-compressor dist/app",
"serve-dist": "ws --hostname localhost -d dist/app -p 1234 -o --log.format stats",
"lint": "ng lint"
},
"private": true,
"dependencies": {
"@angular/common": "8.0.0",
"@angular/compiler": "8.0.0",
"@angular/core": "8.0.0",
"@angular/forms": "8.0.0",
"@angular/platform-browser": "8.0.0",
"@angular/platform-browser-dynamic": "8.0.0",
"@angular/router": "8.0.0",
"@ionic/angular": "4.4.2",
"rxjs": "6.5.2",
"tslib": "1.9.3",
"zone.js": "0.9.1"
},
"devDependencies": {
"@angular-devkit/build-angular": "0.800.1",
"@angular/cli": "8.0.1",
"@angular/compiler-cli": "8.0.0",
"@angular/language-service": "8.0.0",
"@ionic/angular-toolkit": "2.0.0",
"@ionic/app-scripts": "^3.2.4",
"@types/node": "12.0.4",
"bread-compressor-cli": "1.0.7",
"codelyzer": "5.0.1",
"local-web-server": "2.6.1",
"tslint": "5.17.0",
"typescript": "3.4.5"
}
}
PS-該應用程序在瀏覽器上運行良好,但無法與ionic serve --devapp
一起運行。 嘗試更新@ionic/angular-toolkit
但仍給出錯誤。
我遇到了類似的問題,事實證明,如果您不知道所要查找的內容,那么該錯誤將極具誤導性,我確信這是離子錯誤,事實證明,當您使用- devapp使用了一個不同的“建築師” ...這位建築師實際上稱為ionic-cordova-serve,它依賴於ionic-cordova-build。
當我移入代碼時,我在項目/應用程序中缺少這兩個架構師規則。
我在angular.json文件中的“項目”名稱是“技術”,這就是我現在看起來可以正常工作的樣子。
"tech": {
"projectType": "application",
"schematics": {
"@nrwl/angular:component": {
"style": "scss"
}
},
"root": "apps/tech",
"sourceRoot": "apps/tech/src",
"prefix": "tech",
"architect": {
... (build, serve, test, ect are here)
"ionic-cordova-build": {
"builder": "@ionic/angular-toolkit:cordova-build",
"options": {
"browserTarget": "tech:build"
},
"configurations": {
"production": {
"browserTarget": "tech:build:production"
}
}
},
"ionic-cordova-serve": {
"builder": "@ionic/angular-toolkit:cordova-serve",
"options": {
"cordovaBuildTarget": "tech:ionic-cordova-build",
"devServerTarget": "tech:serve"
},
"configurations": {
"production": {
"cordovaBuildTarget": "tech:ionic-cordova-build:production",
"devServerTarget": "tech:serve:production"
}
}
}
}
},
請確保將tech:<item>
更改為您的項目/應用名稱。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.