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

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

4
Angular - * ngIf เทียบกับการเรียกฟังก์ชั่นธรรมดาในเทมเพลต
ขออภัยถ้านี่ได้รับคำตอบแล้วที่นี่ แต่ฉันไม่พบสิ่งที่ตรงกันสำหรับสถานการณ์เฉพาะของเราดังนั้นที่นี่จะไป! เราได้พูดคุยกันในทีมพัฒนาของเราเกี่ยวกับการเรียกใช้ฟังก์ชันในเทมเพลตเชิงมุม ตอนนี้ตามกฎทั่วไปแล้วเรายอมรับว่าคุณไม่ควรทำสิ่งนี้ อย่างไรก็ตามเราได้พยายามที่จะพูดคุยเมื่อมันอาจจะไม่เป็นไร ผมขอยกสถานการณ์ให้คุณ สมมติว่าเรามีบล็อกเทมเพลตที่ล้อมรอบด้วย ngIf ซึ่งจะตรวจสอบพารามิเตอร์หลายรายการเช่นที่นี่: <ng-template *ngIf="user && user.name && isAuthorized"> ... </ng-template> จะมีความแตกต่างอย่างมีนัยสำคัญในประสิทธิภาพเมื่อเทียบกับสิ่งนี้: แม่แบบ: <ng-template *ngIf="userCheck()"> ... </ng-template> typescript: userCheck(): boolean { return this.user && this.user.name && this.isAuthorized; } ดังนั้นเพื่อสรุปคำถามตัวเลือกสุดท้ายจะมีต้นทุนด้านประสิทธิภาพที่สำคัญหรือไม่ เราต้องการใช้วิธีที่ 2 ในสถานการณ์ที่เราต้องตรวจสอบมากกว่า 2 เงื่อนไข แต่บทความออนไลน์จำนวนมากกล่าวว่าการเรียกใช้ฟังก์ชันไม่ดีเสมอในเทมเพลต แต่เป็นปัญหาจริงหรือไม่ในกรณีนี้

4
ความพยายามในการโทรเกินข้อยกเว้นในขณะที่ ng build
ฉันกำลังเผชิญกับข้อยกเว้นในขณะที่ng build(สร้างบันเดิล ES5 สำหรับการโหลดที่แตกต่างกัน ... ) An unhandled exception occured: Call retires were exceeded รุ่นที่ใช้: เชิงมุม-CLI: 8.3.20 เชิงมุม: 8.2.7 โหนด: 12.12.1 นอกจากนี้ในบันทึกจะกล่าวถึง [error] Error: Call retries were exceeded at ChildProcessWorker.initialize

7
ข้อผิดพลาด NG6002: ปรากฏใน NgModule.imports ของ AppModule แต่ไม่สามารถแก้ไขเป็นคลาส NgModule
ครั้งแรกที่ใช้ firestore และฉันได้รับข้อผิดพลาดนี้ ดูเหมือนว่าจะมีปัญหากับ Ivy จากการวิจัยของฉัน ฉันไม่ได้มีประสบการณ์มากมายในการปรับเปลี่ยน tsconfig.app.json ซึ่งเป็นทิศทางที่ฉันชี้ไปแล้วทำตามคำตอบอื่น ๆ สิ่งเดียวที่ฉันสามารถแก้ไขได้จากโครงการดั้งเดิมคือใช้ Angular Fire 6 แทนที่จะเป็น 5 ซึ่งตอนแรกฉันทำเพื่อติดตามการสอน นี่คือ package.json: { "name": "language", "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": { "@angular/animations": "~9.0.1", …

9
TS1086: การเข้าถึงไม่สามารถประกาศในบริบทโดยรอบ
ฉันมีข้อผิดพลาดนี้นับพันหลังจากการใช้งานครั้งแรกและพิมพ์ใน terminal ng ให้บริการแอพของฉันและฉันไม่สามารถแก้ไขได้ นี่เป็นครั้งแรกสำหรับฉันเมื่อฉันมีปัญหาเช่นนี้ภายในเชิงมุมที่มีข้อผิดพลาด typescript ดูเหมือนว่า: ข้อผิดพลาดใน ../../node_modules/@angular/flex-layout/core/typings/base/base2.d.ts:24:19 - ข้อผิดพลาด TS1086: ตัวเข้าถึงไม่สามารถประกาศในบริบทแวดล้อม 24 protected get parentElement(): HTMLElement | null; ~~~~~~~~~~~~~ ../../node_modules/@angular/flex-layout/core/typings/base/base2.d.ts:26:19 - ข้อผิดพลาด TS1086: ไม่สามารถประกาศตัวเข้าถึงได้ในบริบทแวดล้อม 26 protected get nativeElement(): HTMLElement; ~~~~~~~~~~~~~ ../../node_modules/@angular/flex-layout/core/typings/base/base2.d.ts:28:9 - ข้อผิดพลาด TS1086: ไม่สามารถประกาศตัวเข้าถึงได้ในบริบทแวดล้อม 28 get activatedValue(): string; ~~~~~~~~~~~~~~ ../../node_modules/@angular/flex-layout/core/typings/base/base2.d.ts:29:9 - ข้อผิดพลาด TS1086: ไม่สามารถประกาศตัวเข้าถึงได้ในบริบทแวดล้อม 29 set activatedValue(value: …

6
NPM-AUDIT ค้นหาช่องโหว่สูง ฉันควรจะทำอย่างไร?
npm audit ทำงานในโครงการของฉันและรับสิ่งนี้มาให้ฉัน การ พึ่งพาการฉีดคำสั่งสูงของ @ angular-devkit / build-angular [dev] Path @ angular-devkit / build-angular> @ ngtools / webpack> tree-kill ข้อมูลเพิ่มเติม https://npmjs.com/advisories/1432 ฉีดคำสั่งสูง แพ็คเกจฆ่าต้นไม้ ได้รับการติดตั้งใน> = 1.2.2 การพึ่งพาของ @ angular-devkit / build-angular [dev] Path @ angular-devkit / build-angular> tree-kill ข้อมูลเพิ่มเติม https://npmjs.com/advisories/1432 Tree-killต้องได้รับการอัปเดต แต่เป็น dep ของเชิงมุมไม่ใช่ของฉัน แล้วอะไรล่ะ ต้องรอให้ทีมงานเชิงมุมอัปเดต package.json เป็น tree-kill …

1
แอป Angular Firebase ขัดข้องหลังจาก 20 ชั่วโมงด้วยการจัดสรรหน่วยความจำ +1 กิกะไบต์
ฉันพบว่าการใช้AngularFireAuthModuleจาก '@angular/fire/auth';ทำให้หน่วยความจำรั่วซึ่งเกิดปัญหากับเบราว์เซอร์หลังจาก 20 ชั่วโมง เวอร์ชัน: ฉันใช้เวอร์ชั่นล่าสุดที่อัพเดทวันนี้โดยใช้ ncu -u สำหรับแพ็คเกจทั้งหมด ไฟเชิงมุม: "@angular/fire": "^5.2.3", รุ่น Firebase: "firebase": "^7.5.0", วิธีการทำซ้ำ: ฉันทำรหัสขั้นต่ำที่ทำซ้ำได้บนตัวแก้ไข StackBliztz นี่คือลิงค์สำหรับทดสอบข้อบกพร่องโดยตรงทดสอบ StackBlizt อาการ: คุณสามารถตรวจสอบตัวเองว่ารหัสไม่ทำอะไรเลย มันพิมพ์สวัสดีชาวโลก อย่างไรก็ตามหน่วยความจำ JavaScript ที่แอปเชิงมุมใช้เพิ่มขึ้น11 kb / s (Chrome Task Manager CRTL + ESC) หลังจากเปิดเบราว์เซอร์ทิ้งไว้ 10 ชั่วโมงหน่วยความจำที่ใช้จะอยู่ที่ประมาณ800 mb (ขนาดหน่วยความจำประมาณ1.6 Gb !) เป็นผลให้เบราว์เซอร์มีหน่วยความจำไม่เพียงพอและแท็บ Chrome ขัดข้อง หลังจากการตรวจสอบเพิ่มเติมโดยใช้การทำโปรไฟล์หน่วยความจำของ chrome ภายใต้แท็บประสิทธิภาพการทำงานฉันสังเกตเห็นได้อย่างชัดเจนว่าจำนวนผู้ฟังเพิ่มขึ้น 2 …

2
Angular 9 - จุดเริ่มต้นเป้าหมายไม่มีการพึ่งพา
ฉันได้อัปเกรดไลบรารี Angular เป็น Angular 9 อย่างไรก็ตามเมื่อฉันพยายามใช้ไลบรารีนั้นในโครงการ Angular 9 อื่นฉันได้รับข้อผิดพลาดดังนี้: เป้าหมายรายการ "mycomponents / entity-selector" ไม่มีการพึ่งพา: - mycomponents/shared-services - mycomponents/spinner - mycomponents/text-input Package.json { "$schema": "../../../node_modules/ng-packagr/package.schema.json", "name": "entity-selector", "version": "0.0.0", "ngPackage": { "lib": { "entryFile": "public_api.ts" }, "dest": "../../../dist/mycomponents/entity-selector" } } นี่คือปลายทางรองซึ่งใช้ส่วนประกอบอื่นซึ่งเป็นปลายทางรอง ในโครงการห้องสมุดฉันต้องมีบางอย่างกำหนดการอ้างอิงใน ng-packgr หรือที่อื่น? โมดูลสำหรับองค์ประกอบตัวเลือกนิติบุคคลนำเข้าโมดูลที่เหมาะสมสำหรับส่วนประกอบอื่น ๆ ปัญหานี้ถูกครอบตัดตั้งแต่ Angular 9 ขอขอบคุณล่วงหน้า.
12 angular  angular9 

1
npm ci แสดงข้อผิดพลาดกับ Angular 8 และโหนด 12 บน Windows: สร้างโหนด-gyp ใหม่
การตั้งค่าของฉัน: Windows 10 NVM 1.1.7 สำหรับ Windows โหนด 12.14.1 พร้อม npm 6.13.4 8.2.14 เชิงมุมที่มี @ angular / cli 8.3.22 เพียงพยายามเรียกใช้เทมเพลตเชิงมุมเริ่มต้น: > npm install -g @angular/cli # this installed the angular version mentioned above > ng new test # Chose default options for the project > cd test > npm ci …
12 node.js  angular  npm 

1
ข้อผิดพลาดเชิงมุม Quill: NullInjectorError: ไม่มีผู้ให้บริการสำหรับการตั้งค่า InjectionToken
ฉันอัพเดตโมดูลโหนดทั้งหมดของฉันและเมื่ออัพเดตขนนกตัวแก้ไขทั้งหมดของฉันจะแตกในแอปพลิเคชันของฉัน ข้อผิดพลาด "NullInjectorError: ไม่มีผู้ให้บริการสำหรับการตั้งค่า InjectionToken!" ปรากฏ ฉันได้แก้ไขปัญหานี้แล้ว! แค่อยากจะแบ่งปันกับคนอื่น ๆ ที่อาจจะอยู่ในเรือลำเดียวกัน คุณต้องเพิ่ม QuillModule (นำเข้า {QuillModule} จาก 'ngx-quill';) ไปยังส่วน 'Imports' ของโมดูลแอป (หรือโมดูลใด ๆ ที่คุณใช้) สำหรับฉันฉันต้องเพิ่ม. forRoot () เพื่อให้ทำงานได้ imports: [ QuillModule.forRoot(), ], อีกครั้งนี้ใช้งานได้สำหรับฉันเพียงแจ้งให้คุณทุกคนทราบในกรณีที่คุณพบปัญหาเดียวกันในการอัปเดต ngx-quill เป็นเวอร์ชันใหม่ล่าสุด

2
ควร __ngcc_entry_points __. json จะถูกเพิ่มในการควบคุมแหล่งที่มา
ในระหว่างการอัปเดตเป็น Angular 9.1 ไฟล์ที่เรียกว่า__ngcc_entry_points__.jsonปรากฏในโฟลเดอร์รูททั้งหมดของฉันในโครงการ ควรเพิ่มไฟล์นี้ในการควบคุมแหล่งหรือละเว้น? ดูเหมือนว่าจะมีข้อมูลแฮชเพียงบางส่วนดังนั้นฉันคิดว่ามันสามารถถูกละเว้นได้?

2
ไม่พบปลั๊กอิน“ ข้อเสนอเชิงตัวเลข - ตัวแยก” ในแอปเชิงมุม
ng build --prodฉันได้รับดังต่อไปนี้ข้อผิดพลาดในการทำงาน An unhandled exception occurred: [BABEL] /root/catch-up-enterprise/dist/polyfills-es5.8e4ba13e1c10f0a37bb4.js: Could not find plugin "proposal-numeric-separator". Ensure there is an entry in ./available-plugins.js for it. (While processing: "/root/catch-up-enterprise/node_modules/@angular-devkit/build-angular/node_modules/@babel/preset-env/lib/index.js") See "/tmp/ng-sg4wHH/angular-errors.log" for further details บันทึกข้อผิดพลาด: [root@localhost ~]# more /tmp/ng-sg4wHH/angular-errors.log [error] Error: [BABEL] /root/catch-up-enterprise/dist/polyfills-es5.8e4ba13e1c10f0a37bb4.js: Could not find plugin "proposal-numeric-separator". Ensure there is an entry …
11 angular  npm 

1
src / zone-flag.ts หายไปจากการรวบรวม TypeScript หลังจากอัพเกรดเป็น Ionic 5
ฉันอัพเกรดแอปพลิเคชัน Ionic 4 โดยคำสั่งสองคำนี้: # Upgrading to Ionic 5 npm install @ionic/angular@latest @ionic/angular-toolkit@latest --save # Upgrading to Angular 9 ng update @angular/core @angular/cli และเมื่อฉันทำionic serveฉันเริ่มได้รับข้อผิดพลาดนี้: > ng run app:serve --host=localhost --port=8100 [ng] chunk {} 0.js, 0.js.map () 22.1 kB [rendered] [ng] chunk {common} common.js, common.js.map (common) 25.7 kB [rendered] [ng] …

2
รายการเบราว์เซอร์เชิงมุม: caniuse-lite ล้าสมัยแล้ว กรุณาเรียกใช้คำสั่งต่อไป `ปรับปรุง npm '
ฉันเพิ่งเริ่มรับข้อผิดพลาดนี้ในโครงการ Angular 8 (โหนด v10.16.0) ฉันกำลังทำงานอยู่ การเรียกใช้การอัปเดต npm รายการเบราว์เซอร์ caniuse-lite ไม่ได้ทำอะไรเลย ดังนั้นฉันจึงลบ package-lock.json ลบ node_modules และรันการติดตั้ง npm แต่ไฟล์เบราว์เซอร์หายไป อีกครั้งเมื่อฉันรัน ng build ฉันได้รับข้อความเดียวกัน: Browserslist: caniuse-lite ล้าสมัยแล้ว กรุณาเรียกใช้คำสั่งต่อไปnpm update ฉันเห็นโพสต์นี้ในหัวข้อเดียวกัน: Browserslist: caniuse-lite ล้าสมัยแล้ว กรุณาเรียกใช้คำสั่งถัดไป `ปรับปรุง npm รายการ caniuse-lite browserlist ' แต่มันพูดถึง WebCompiler และ autoprefixer และฉันก็ไม่รู้ว่า กรุณาแนะนำ

6
ปัญหาเกี่ยวกับนโยบาย CORS และ. NET Core 3.1
ฉันไม่แน่ใจว่าสิ่งที่ฉันหายไป แต่ดูเหมือนว่าไม่สามารถทำให้นโยบาย CORS ของฉันทำงานกับ. NET Core 3.1 และ Angular 8 ฝั่งไคลเอ็นต์ Startup.cs: public void ConfigureServices(IServiceCollection services) { // ... // Add CORS policy services.AddCors(options => { options.AddPolicy("foo", builder => { // Not a permanent solution, but just trying to isolate the problem builder.AllowAnyOrigin().AllowAnyMethod().AllowAnyHeader(); }); }); services.AddControllers(); } public void Configure(IApplicationBuilder …

1
วิธีการค้นหาการกระทำใดของ async ที่เรียก ngZone (ซึ่งนำไปสู่การตรวจจับการเปลี่ยนแปลง)
การเปลี่ยนแปลงใด ๆ globalZoneAwareCallbackในกองติดตามการปรับปรุงอยู่เสมอนำกลับไป คุณจะรู้ได้อย่างไรว่าอะไรทำให้เกิดการเปลี่ยนแปลง ในแง่ของการแก้จุดบกพร่องมันเป็นเรื่องดีที่จะมีภาพที่ชัดเจน

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