คำถามติดแท็ก angular

คำถามเกี่ยวกับ Angular (เพื่อไม่ให้สับสนกับ AngularJS) ซึ่งเป็นกรอบเว็บจาก Google ใช้แท็กนี้สำหรับคำถามเชิงมุมซึ่งไม่เจาะจงสำหรับแต่ละเวอร์ชัน สำหรับเฟรมเวิร์กเว็บ AngularJS (1.x) ที่เก่ากว่าให้ใช้แท็ก angularjs

6
ฉันจะแบ่งปันข้อมูลระหว่างส่วนประกอบใน Angular 2 ได้อย่างไร
ใน Angular 1.xx คุณเพียงแค่ขอบริการเดียวกันและลงเอยด้วยอินสแตนซ์เดียวกันทำให้สามารถแบ่งปันข้อมูลในบริการได้ ตอนนี้ใน Angular 2 ฉันมีส่วนประกอบที่อ้างอิงถึงบริการของฉัน ฉันสามารถอ่านและแก้ไขข้อมูลในบริการซึ่งเป็นสิ่งที่ดี เมื่อฉันพยายามฉีดบริการเดียวกันในส่วนประกอบอื่นดูเหมือนว่าฉันได้รับอินสแตนซ์ใหม่ ผมทำอะไรผิดหรือเปล่า? มันเป็นรูปแบบที่ผิด (ใช้บริการเพื่อแบ่งปันข้อมูล) หรือฉันต้องทำเครื่องหมายบริการเป็นซิงเกิลตัน (ภายในแอปเดียว) หรืออะไร? ฉันอยู่ใน2.0.0-alpha.27/ btw ฉันฉีดบริการผ่านappInjector(แก้ไข: ตอนนี้providers) ใน@Componentคำอธิบายประกอบจากนั้นบันทึกการอ้างอิงในตัวสร้าง มันทำงานในคอมโพเนนต์ - ไม่ใช่ในคอมโพเนนต์ (ไม่แชร์อินสแตนซ์บริการเดียวกัน) อย่างที่คิด UPDATE : ณ เชิงมุม 2.0.0 ตอนนี้เรามี @ngModule ที่คุณจะกำหนดให้บริการภายใต้ทรัพย์สินในกล่าวว่าproviders @ngModuleซึ่งจะช่วยให้มั่นใจได้ว่าอินสแตนซ์เดียวกันของบริการนั้นจะถูกส่งต่อไปยังส่วนประกอบบริการ ฯลฯ ในโมดูลนั้น https://angular.io/docs/ts/latest/guide/ngmodule.html#providers UPDATE : เกิดขึ้นมากมายกับการพัฒนา Angular และ FE โดยทั่วไป ดังที่ @noririco กล่าวไว้คุณสามารถใช้ระบบการจัดการของรัฐเช่น NgRx: https://ngrx.io/

12
เกิดข้อยกเว้นที่ไม่สามารถจัดการได้: ชื่องาน“ ..getProjectMetadata” ไม่มีอยู่
เมื่อฉันเริ่มเรียกใช้แอปพลิเคชันของฉันฉันได้รับข้อผิดพลาดนี้: **[error] Error: Job name "..getProjectMetadata" does not exist.** at Observable._subscribe (/Users/vasil/KSS/kssfrontend/node_modules/@angular-devkit/core/src/experimental/jobs/simple-scheduler.js:350:23) at Observable._trySubscribe (/Users/vasil/KSS/kssfrontend/node_modules/@angular-devkit/core/node_modules/rxjs/internal/Observable.js:44:25) at Observable.subscribe (/Users/vasil/KSS/kssfrontend/node_modules/@angular-devkit/core/node_modules/rxjs/internal/Observable.js:30:22) at /Users/vasil/KSS/kssfrontend/node_modules/@angular-devkit/core/node_modules/rxjs/internal/util/subscribeTo.js:22:31 at Object.subscribeToResult (/Users/vasil/KSS/kssfrontend/node_modules/@angular-devkit/core/node_modules/rxjs/internal/util/subscribeToResult.js:10:45) at SwitchMapSubscriber._innerSub (/Users/vasil/KSS/kssfrontend/node_modules/@angular-devkit/core/node_modules/rxjs/internal/operators/switchMap.js:65:54) at SwitchMapSubscriber._next (/Users/vasil/KSS/kssfrontend/node_modules/@angular-devkit/core/node_modules/rxjs/internal/operators/switchMap.js:55:14) at SwitchMapSubscriber.Subscriber.next (/Users/vasil/KSS/kssfrontend/node_modules/@angular-devkit/core/node_modules/rxjs/internal/Subscriber.js:66:18) at SwitchMapSubscriber.notifyNext (/Users/vasil/KSS/kssfrontend/node_modules/@angular-devkit/core/node_modules/rxjs/internal/operators/switchMap.js:86:26) at InnerSubscriber._next (/Users/vasil/KSS/kssfrontend/node_modules/@angular-devkit/core/node_modules/rxjs/internal/InnerSubscriber.js:28:21) at InnerSubscriber.Subscriber.next (/Users/vasil/KSS/kssfrontend/node_modules/@angular-devkit/core/node_modules/rxjs/internal/Subscriber.js:66:18) at /Users/vasil/KSS/kssfrontend/node_modules/@angular-devkit/core/node_modules/rxjs/internal/util/subscribeTo.js:17:28 at Object.subscribeToResult (/Users/vasil/KSS/kssfrontend/node_modules/@angular-devkit/core/node_modules/rxjs/internal/util/subscribeToResult.js:10:45) at SwitchMapSubscriber._innerSub (/Users/vasil/KSS/kssfrontend/node_modules/@angular-devkit/core/node_modules/rxjs/internal/operators/switchMap.js:65:54) at …

5
ชื่องาน“ ..getProjectMetadata” ไม่มีอยู่
ฉันอัปเดตเชิงมุมเป็น v9 และเมื่อฉันพยายามกลับไปเป็น v8 ฉันได้รับข้อผิดพลาดนี้ ฉันได้ลองทำสิ่งต่อไปนี้แล้ว: ถอนการติดตั้ง -global angular / cli ถอนการติดตั้ง angular / cli กลับไปที่แพ็คเกจสุดท้ายของฉัน ลบโฟลเดอร์ node_module ลบ repo ข้อผิดพลาดนี้ยังคงแสดง stacktrace ของฉันคือ: An unhandled exception occurred: Job name "..getProjectMetadata" does not exist. See angular-errors.log for further details. angular-errors.log: [error] Error: Job name "..getProjectMetadata" does not exist. at Observable._subscribe (/Front/node_modules/@angular-devkit/core/src/experimental/jobs/simple-scheduler.js:350:23) …


6
npm WARN เลิกใช้ core-js@2.6.11: core-js @ <3 ไม่ได้รับการดูแลรักษาอีกต่อไปและไม่แนะนำสำหรับการใช้งานเนื่องจากจำนวนปัญหา
ฉันได้รับข้อผิดพลาดด้านล่างขณะสร้างแอปพลิเคชัน Angular ใหม่ - npm WARN เลิกใช้ core-js@2.6.11: core-js @ &lt;3 ไม่ได้รับการดูแลรักษาอีกต่อไปและไม่แนะนำให้ใช้เนื่องจากมีปัญหาหลายประการ โปรดอัพเกรดการอ้างอิงของคุณเป็น core-js @ 3 เวอร์ชันจริง ฉันลองวิธีการแก้ปัญหาที่ระบุในลิงค์ด้านล่าง แต่มันไม่ได้ผลสำหรับฉัน - ข้อผิดพลาด: ได้โปรดอัพเกรดการอ้างอิงของคุณเป็น core-js @ 3 เวอร์ชันจริง เมื่อฉันตรวจสอบเวอร์ชั่นของ Angular โดยใช้คำสั่ง 'ng --version' ฉันเห็น&lt;error&gt;ว่าเป็นเวอร์ชั่นสำหรับแพ็คเกจด้านล่าง - @angular-devkit/architect @angular-devkit/core @angular-devkit/schematics @schematics/angular @schematics/update คุณช่วยกรุณาแนะนำสิ่งที่ผิดพลาดและสิ่งที่ต้องทำเพื่อแก้ไขปัญหานี้? PS - ฟังก์ชั่นเดียวกันนี้ทำงานได้ดีเมื่อวันก่อน และโครงการที่สร้างขึ้นแล้วก็ทำงานได้ดีในท้องถิ่น

2
ข้อผิดพลาด TS1086: ผู้เข้าถึงไม่สามารถประกาศในบริบทโดยรอบใน Angular 9
ฉันกำลังเรียนรู้วัสดุเชิงมุมและฉันได้รับข้อผิดพลาดนี้เมื่อนำเข้า {MatButtonModule} จาก "@ angular / material / button" จากสิ่งที่ฉันอ่านในคำตอบอื่น ๆ ดูเหมือนว่าปัญหาความเข้ากันได้ของแพ็คเกจ แต่ฉันไม่สามารถแก้ไขได้ นี่คือข้อผิดพลาดแบบเต็ม ERROR in node_modules/@angular/cdk/a11y/focus-trap/focus-trap.d.ts(29,9): error TS1086: An accessor cannot be declared in an ambient context. node_modules/@angular/cdk/a11y/focus-trap/focus-trap.d.ts(30,9): error TS1086: An accessor cannot be declared in an ambient context. node_modules/@angular/cdk/a11y/focus-trap/focus-trap.d.ts(128,9): error TS1086: An accessor cannot be declared in an …

6
Ionic 5 ที่มี Angular 9 - การรวบรวม JIT เชิงมุมล้มเหลว: ไม่ได้โหลด '@ angular / compiler'
Ionic 5 ได้รับการประกาศเมื่อไม่กี่ชั่วโมงที่ผ่านมา (12 ก.พ. 2020) และฉันได้อัพเกรดแอพโปรดักชั่นเล็ก ๆ ของฉันเป็น Ionic 5 พร้อมกับ Angular 9: # To update to Ionic 5 npm install @ionic/angular@latest @ionic/angular-toolkit@latest --save-exact --save # To update to Angular 9 ng update @angular/core @angular/cli แต่เมื่อฉันทำionic serveฉันเริ่มได้รับข้อผิดพลาดการร้อง: Error: Angular JIT compilation failed: '@angular/compiler' not loaded! - JIT compilation is …

1
Angular 9 Ivy - ประเภททั่วไป 'ɵɵFactoryDef' ต้องการอาร์กิวเมนต์ 2 ประเภท
ดูเหมือนว่า Angular Ivy ยังไม่พร้อม ฉันพยายามที่จะสร้างโครงการของฉันโดยใช้ไม้เลื้อยซึ่งเป็นแนวคิดหลักสำหรับเชิงมุม 9. @angular/flex-layoutห้องสมุดหลายแห่งไม่ได้เข้ากันได้กับคุณลักษณะนี้หนึ่งในห้องสมุดเหล่านี้คือ วัสดุและงานบริการมีปัญหาเช่นเดียวกัน หลังจากใช้ng build --prod --aot -c=productionสคริปต์เพื่อสร้างโครงการของฉันฉันได้รับ: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ node_modules/@angular/flex-layout/core/typings/media-trigger/media-trigger.d.ts:71:18 - error TS2314: Generic type 'ɵɵFactoryDef' requires 2 type argument(s). 71 static ɵfac: ɵngcc0.ɵɵFactoryDef&lt;MediaTrigger&gt;; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ node_modules/@angular/flex-layout/extended/typings/show-hide/show-hide.d.ts:18:18 - error TS2314: Generic type 'ɵɵFactoryDef' requires 2 type argument(s). 18 static ɵfac: ɵngcc0.ɵɵFactoryDef&lt;ShowHideStyleBuilder&gt;; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ node_modules/@angular/flex-layout/extended/typings/show-hide/show-hide.d.ts:49:18 - error TS2314: …
17 angular  ivy  angular9 

1
ข้อผิดพลาดในการตั้งค่าคอนฟิกฐานข้อมูล Angular8 fire '@ angular / fire / angularfire2'
เมื่อพยายามที่จะ 'เสิร์ฟ ng' หลังจากกำหนดค่าเชิงมุมด้วยฐานข้อมูลฉันได้รับข้อผิดพลาด แม้ว่าฉันจะไปที่ข้อความแสดงข้อผิดพลาดนี้ แต่ไม่พบอะไรเลย ในข้อความแสดงข้อผิดพลาดปัญหานี้เกี่ยวข้องกับไลบรารีเอง user@user-MacBookPro post % ng serve 10% building 3/3 modules 0 activeℹ 「wds」: Project is running at http://localhost:4200/webpack-dev-server/ ℹ 「wds」: webpack output is served from / ℹ 「wds」: 404s will fallback to //index.html chunk {main} main.js, main.js.map (main) 2.15 kB [initial] [rendered] chunk {polyfills} …

5
ไม่อนุญาตให้เลื่อนแนวนอนเมื่อเลื่อนแนวตั้ง (และกลับกัน)
ผมมีรายการที่มีoverflow-xและกำหนดให้overflow-y นอกจากนี้ผมได้ตั้งค่าเลื่อนโมเมนตัมเพื่อเลื่อนสัมผัสการทำงานมีความสุขในมือถือใช้autowebkit-overflow-scrolling: true อย่างไรก็ตามปัญหาคือฉันไม่สามารถหาวิธีปิดการใช้งานการเลื่อนแนวนอนเมื่อเลื่อนในแนวตั้ง มันนำไปสู่ประสบการณ์การใช้งานที่ไม่ดีนักเนื่องจากการปัดไปทางซ้ายบนหรือขวาบนจะทำให้ตารางเลื่อนตามแนวทแยงมุม เมื่อผู้ใช้เลื่อนแนวตั้งฉันไม่ต้องการเลื่อนในแนวนอนอย่างแน่นอนจนกว่าผู้ใช้จะหยุดเลื่อนแนวตั้ง ฉันได้ลองทำสิ่งต่อไปนี้แล้ว: JS: offsetX: number; offsetY: number; isScrollingHorizontally = false; isScrollingVertically = false; //Detect the scrolling events ngOnInit() { this.scrollListener = this.renderer.listen( this.taskRows.nativeElement, 'scroll', evt =&gt; { this.didScroll(); } ); fromEvent(this.taskRows.nativeElement, 'scroll') .pipe( debounceTime(100), takeUntil(this.destroy$) ) .subscribe(() =&gt; { this.endScroll(); }); } didScroll() { if …

5
ฉันกำลังมีปัญหากับแอพสร้างแองกูลาร์เพื่อการผลิต
พฤติกรรมปัจจุบันฉันกำลังสร้างโครงการเชิงมุมของฉันบนวงกลมและมันก็ทำให้ความล้มเหลวด้วยข้อความต่อไปนี้: มีข้อยกเว้นที่ไม่สามารถจัดการได้เกิดขึ้น: ไม่สามารถหาโมดูล '@ babel / compat-data / corejs3- จัดส่งข้อเสนอ' ต้องการสแต็ก: /home/circleci/eleven-app/frontend/node_modules/@angular-devkit/build-angular/node_modules/@babel/preset-env/lib/polyfills/corejs3/usage-plugin.js /home/circleci/eleven-app/frontend/node_modules/@angular-devkit/build-angular/node_modules/@babel/preset-env/lib/index.js /home/circleci/eleven-app/frontend/node_modules/@angular-devkit/build-angular/node_modules/@babel/core/lib/config/files/plugins.js /home/circleci/eleven-app/frontend/node_modules/@angular-devkit/build-angular/node_modules/@babel/core/lib/config/files/index.js /home/circleci/eleven-app/frontend/node_modules/@angular-devkit/build-angular/node_modules/@babel/core/lib/index.js /home/circleci/eleven-app/frontend/node_modules/@angular-devkit/build-angular/src/utils/process-bundle.js /home/circleci/eleven-app/frontend/node_modules/jest-worker/build/workers/processChild.js ฉันใช้ { "@babel/plugin-proposal-numeric-separator": "^7.8.3", "core-js": "3.2.1", "tslib": "^1.11.1", "@babel/compat-data": "~7.8.0", "@babel/runtime-corejs3": "^7.9.2", "ts-node": "7.0.0", "tslint": "5.11.0", "typescript": "3.5.3", } resolutions: { "@babel/preset-env": "^7.8.7" } นี่คือ npx nls เหตุใดเอาท์พุท @ babel / preset-env: …
15 angular  babel 

1
คลาสนี้ปรากฏแก่ผู้บริโภคผ่าน SomeModule -> SomeComponent แต่ไม่ถูกเอ็กซ์พอร์ตจากจุดเข้าใช้งานไลบรารีระดับบนสุด
ฉันอัปเกรดไลบรารีเชิงมุมทั้งหมดของฉันให้angular 9.0.0ใช้ng updateและเมื่อฉันพยายามสร้างพวกเขาฉันได้รับข้อผิดพลาดด้านล่าง ข้อผิดพลาด: คลาสส่วนตัวที่ไม่รองรับ SomeComponent คลาสนี้ปรากฏแก่ผู้บริโภคผ่าน SomeModule -&gt; SomeComponent แต่ไม่ถูกเอ็กซ์พอร์ตจากจุดเข้าใช้งานไลบรารีระดับบนสุด ใครแก้ไขข้อผิดพลาดนี้?

3
วิธีสร้างรายการแบบหล่นลงหลายระดับและผูกกับข้อมูลที่มาจากเซิร์ฟเวอร์
ฉันใหม่กับแองกูลาร์ ฉันทำงานเกี่ยวกับ Angular แล้ว ฉันต้องการผูกรายการดร็อปดาวน์แบบซ้อนสำหรับJsonข้อมูลที่มาจากเซิร์ฟเวอร์โดยการเรียก Rest Api ข้อมูลมีหนึ่งคุณลักษณะLgLevelระบุระดับในลำดับชั้นของกลุ่ม ผู้ปกครองจะมีlevel=0, ทันทีChild=1, Grandchild=2และอื่น ๆ ChildและGrandchildมีParentLocationGroupฟิลด์ซึ่งแสดงภายในเมนูหลักเมนูย่อยจะมี นี่คือjsonข้อมูลของฉัน ฉันมีข้อมูลจำนวนมาก แต่ไม่แสดงทั้งหมด { "ArrayOfLocationGroup": { "LocationGroup": [ { "Id": "628", "Name": "TEST1", "GroupId": { "_xmlns": "http://www.air-watch.com/servicemodel/resources" }, "ParentLocationGroup": { "_uuid": "bdce4396-9c60-4831-90f2-6f793becb362", "__text": "570" }, "LgLevel": { "_xmlns": "http://www.air-watch.com/servicemodel/resources", "__text": "0" } }, { "Id": "630", "Name": …

2
ข้อผิดพลาด: โปรดอัพเกรดการอ้างอิงของคุณเป็น core-js @ 3 เวอร์ชันจริง
ฉันพยายามเรียกใช้npm startแต่ให้ข้อผิดพลาดกับฉัน "เกิดข้อยกเว้นที่ไม่สามารถจัดการได้: ไม่พบโมดูล" @ angular-devkit / build-angular "ฉันพยายามติดตั้งโดยใช้npm install @angular-devkit/build-angularแต่ยังได้รับข้อผิดพลาด ข้อผิดพลาด "npm WARN เลิกใช้ core-js@2.6.11: core-js @ &lt;3 ไม่ได้รับการดูแลรักษาอีกต่อไปและไม่แนะนำสำหรับการใช้งานเนื่องจากจำนวนของปัญหาโปรดอัปเกรดการอ้างอิงของคุณเป็น core-js @ 3 จริง ." ฉันจะอัพเกรดการพึ่งพาของฉันได้อย่างไร

3
ตรวจสอบว่ามีการส่งออกในองค์ประกอบ
พิจารณาองค์ประกอบต่อไปนี้: @Component({ selector: 'app-test' template: 'Hello!' }} export class TestComponent { @Output() readonly selectionChange = new EventEmitter&lt;SomeTypeHere&gt;(); } ด้วยการโทร: &lt;app-test (selectedChange)="selectedChangeHandler($event)"&gt;&lt;/app-test&gt; โปรดทราบว่าผมเคยเขียนแทนชื่อของการส่งออกที่ถูกต้องselectedChange selectionChangeAngular 9 ที่strictTemplatesเปิดใช้งานการตั้งค่าสถานะไม่ได้ช่วยฉันเลย มันล้มเหลวอย่างเงียบ ๆ ส่วนที่น่าสนใจคือถ้าฉันทำสิ่งเดียวกัน@Inputแอปจะจับข้อผิดพลาดและไม่คอมไพล์ มีวิธีใดที่จะทำให้เกิดข้อผิดพลาดหากฉันพยายาม "ฟัง" ที่ไม่มีข้อมูล@Output?

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.