worktile / ngx-planet

🚀🌍🚀A powerful, reliable, fully-featured and production ready Micro Frontend library for Angular.
http://planet.ngnice.com
MIT License
538 stars 67 forks source link

angular build 之后部署,报错NullInjectorError: No provider for Planet! #129

Closed wushuxuan closed 3 years ago

wushuxuan commented 3 years ago

Describe the bug app.component.ngfactory.js.pre-build-optimizer.js:21 ERROR NullInjectorError: StaticInjectorError(AppModule)[AppComponent -> Planet]: StaticInjectorError(Platform: core)[AppComponent -> Planet]: NullInjectorError: No provider for Planet!

image

wushuxuan commented 3 years ago

"dependencies": { "@angular/animations": "~8.2.3", "@angular/cdk": "^8.2.3", "@angular/common": "~8.2.3", "@angular/compiler": "~8.2.3", "@angular/core": "~8.2.3", "@angular/forms": "~8.2.3", "@angular/platform-browser": "~8.2.3", "@angular/platform-browser-dynamic": "~8.2.3", "@angular/router": "~8.2.3", "@ant-design/icons-angular": "8.0.3", "@delon/abc": "^8.4.0", "@delon/acl": "^8.4.0", "@delon/auth": "^8.4.0", "@delon/cache": "^8.4.0", "@delon/chart": "^8.4.0", "@delon/form": "^8.4.0", "@delon/mock": "^8.4.0", "@delon/theme": "^8.4.0", "@delon/util": "^8.4.0", "@ngx-translate/core": "^11.0.1", "@ngx-translate/http-loader": "^4.0.0", "@types/cropperjs": "^1.3.0", "@types/dragula": "^2.1.34", "@worktile/planet": "^1.1.3", "ajv": "^6.10.2", "axios": "^0.19.0", "classlist.js": "^1.1.20150312", "core-js": "^3.1.4", "cropperjs": "^1.5.6", "date-fns": "^1.30.1", "editorconfig-tools": "^0.1.1", "husky": "^3.0.3", "js-sha1": "^0.6.0", "lint-staged": "^9.2.1", "ng-zorro-antd": "^8.5.2", "ngx-quill": "^7.3.2", "ngx-sortablejs": "^3.1.3", "ngx-tinymce": "^7.0.0", "prettier": "^1.16.1", "prettier-stylelint": "^0.4.2", "quill": "^1.3.6", "rxjs": "~6.5.2", "screenfull": "^4.2.1", "sortablejs": "^1.10.0-rc3", "stylelint": "^10.0.1", "stylelint-config-standard": "^18.3.0", "sweetalert2": "^8.15.2", "tslib": "^1.9.0", "tslint-config-prettier": "^1.18.0", "web-animations-js": "^2.3.2", "zone.js": "~0.10.1" }, "devDependencies": { "@angular-builders/custom-webpack": "^8.4.1", "@angular-devkit/build-angular": "~0.802.1", "@angular-devkit/build-ng-packagr": "^0.1000.4", "@angular/cli": "~8.2.1", "@angular/compiler-cli": "~8.2.1", "@angular/language-service": "~8.2.1", "@angularclass/hmr": "^2.1.3", "@delon/testing": "^8.3.0", "@types/jasmine": "~3.4.0", "@types/jasminewd2": "~2.0.3", "@types/lodash": "^4.14.161", "@types/node": "~12.7.1", "axios": "^0.19.0", "babel-polyfill": "^6.26.0", "codelyzer": "^5.0.1", "configure-jxgy": "^1.2.6", "jasmine-core": "~3.4.0", "jasmine-spec-reporter": "~4.2.1", "js-sha1": "^0.6.0", "karma": "~4.2.0", "karma-chrome-launcher": "~3.0.0", "karma-coverage-istanbul-reporter": "~2.1.0", "karma-jasmine": "~2.0.1", "karma-jasmine-html-reporter": "^1.4.0", "less-bundle-promise": "^1.0.7", "lodash": "^4.17.20", "ng-alain": "^8.4.0", "ng-alain-codelyzer": "^0.0.1", "protractor": "~5.4.0", "ts-md5": "^1.2.6", "ts-node": "~8.3.0", "ng-packagr": "^10.0.3", "tsickle": "^0.36.0", "tslint": "~5.18.0", "typescript": "^3.5.3", "webpack-assets-manifest": "^3.1.1" }

why520crazy commented 3 years ago

AppModule 引入Planet模块了吗

why520crazy commented 3 years ago

提供一个最小化的示例项目吧,根据你的描述看不出问题是什么

walkerkay commented 3 years ago

"dependencies": { "@angular/animations": "~8.2.3", "@angular/cdk": "^8.2.3", "@angular/common": "~8.2.3", "@angular/compiler": "~8.2.3", "@angular/core": "~8.2.3", "@angular/forms": "~8.2.3", "@angular/platform-browser": "~8.2.3", "@angular/platform-browser-dynamic": "~8.2.3", "@angular/router": "~8.2.3", "@ant-design/icons-angular": "8.0.3", "@delon/abc": "^8.4.0", "@delon/acl": "^8.4.0", "@delon/auth": "^8.4.0", "@delon/cache": "^8.4.0", "@delon/chart": "^8.4.0", "@delon/form": "^8.4.0", "@delon/mock": "^8.4.0", "@delon/theme": "^8.4.0", "@delon/util": "^8.4.0", "@ngx-translate/core": "^11.0.1", "@ngx-translate/http-loader": "^4.0.0", "@types/cropperjs": "^1.3.0", "@types/dragula": "^2.1.34", "@worktile/planet": "^1.1.3", "ajv": "^6.10.2", "axios": "^0.19.0", "classlist.js": "^1.1.20150312", "core-js": "^3.1.4", "cropperjs": "^1.5.6", "date-fns": "^1.30.1", "editorconfig-tools": "^0.1.1", "husky": "^3.0.3", "js-sha1": "^0.6.0", "lint-staged": "^9.2.1", "ng-zorro-antd": "^8.5.2", "ngx-quill": "^7.3.2", "ngx-sortablejs": "^3.1.3", "ngx-tinymce": "^7.0.0", "prettier": "^1.16.1", "prettier-stylelint": "^0.4.2", "quill": "^1.3.6", "rxjs": "~6.5.2", "screenfull": "^4.2.1", "sortablejs": "^1.10.0-rc3", "stylelint": "^10.0.1", "stylelint-config-standard": "^18.3.0", "sweetalert2": "^8.15.2", "tslib": "^1.9.0", "tslint-config-prettier": "^1.18.0", "web-animations-js": "^2.3.2", "zone.js": "~0.10.1" }, "devDependencies": { "@angular-builders/custom-webpack": "^8.4.1", "@angular-devkit/build-angular": "~0.802.1", "@angular-devkit/build-ng-packagr": "^0.1000.4", "@angular/cli": "~8.2.1", "@angular/compiler-cli": "~8.2.1", "@angular/language-service": "~8.2.1", "@angularclass/hmr": "^2.1.3", "@delon/testing": "^8.3.0", "@types/jasmine": "~3.4.0", "@types/jasminewd2": "~2.0.3", "@types/lodash": "^4.14.161", "@types/node": "~12.7.1", "axios": "^0.19.0", "babel-polyfill": "^6.26.0", "codelyzer": "^5.0.1", "configure-jxgy": "^1.2.6", "jasmine-core": "~3.4.0", "jasmine-spec-reporter": "~4.2.1", "js-sha1": "^0.6.0", "karma": "~4.2.0", "karma-chrome-launcher": "~3.0.0", "karma-coverage-istanbul-reporter": "~2.1.0", "karma-jasmine": "~2.0.1", "karma-jasmine-html-reporter": "^1.4.0", "less-bundle-promise": "^1.0.7", "lodash": "^4.17.20", "ng-alain": "^8.4.0", "ng-alain-codelyzer": "^0.0.1", "protractor": "~5.4.0", "ts-md5": "^1.2.6", "ts-node": "~8.3.0", "ng-packagr": "^10.0.3", "tsickle": "^0.36.0", "tslint": "~5.18.0", "typescript": "^3.5.3", "webpack-assets-manifest": "^3.1.1" }

这是由于Planet是基于Angular@9的,由于Angular@9 在Aot编译时做了一些优化导致了这个问题,建议升级 Angular@9 或 使用 Planet 1.1.3 版本

lvliang271486017 commented 3 years ago

Describe the bug app.component.ngfactory.js.pre-build-optimizer.js:21 ERROR NullInjectorError: StaticInjectorError(AppModule)[AppComponent -> Planet]: StaticInjectorError(Platform: core)[AppComponent -> Planet]: NullInjectorError: No provider for Planet!

image

你这个问题是因为不支持angular8的原因吗

why520crazy commented 3 years ago

ng8使用1.1.2版本试试