Devdit
 

วิธีติดตั้ง NgRx ใน Angular

1.1K

บทความนี้สอนวิธีติดตั้ง NgRx ใน Angular โดย NgRx คือ Library สำหรับจัดการสถานะ (State Management) ของโปรแกรมที่พัฒนาด้วย Angular Framework ตัวอย่างนี้เราจะได้เรียนรู้ขั้นตอนการติดตั้ง NgRx และปัญหาที่พบบ่อยในการติดตั้ง NgRx ใน Angular มีรายละเอียดดังนี้

 

ตัวอย่าง วิธีติดตั้ง NgRx ใน Angular

1. ตรวจสอบเวอร์ชัน Angular ก่อนด้วยคำสั่ง ng v เพราะ NgRx จะติดตั้ง และทำงานได้อย่างไม่มีปัญหากับ Angular ในเวอร์ชั่นเดียวกัน ตัวอย่างใช้ Angular 16.x.x และจะติดตั้ง NgRx เวอร์ชั่น 16.x.x

ng v
Angular CLI: 16.2.10
Node: 18.18.0
Package Manager: npm 10.2.4
OS: win32 x64

Angular: 16.2.12
... animations, common, compiler, compiler-cli, core, forms
... platform-browser, platform-browser-dynamic, router

Package                         Version
---------------------------------------------------------
@angular-devkit/architect       0.1602.10
@angular-devkit/build-angular   16.2.10
@angular-devkit/core            16.2.10
@angular-devkit/schematics      16.2.10
@angular/cli                    16.2.10
@schematics/angular             16.2.10
rxjs                            7.8.1
typescript                      5.1.6
zone.js                         0.13.3

 

2. เข้าไปใน Angular Project และติดตั้ง NgRx ด้วยคำสั่ง

ng add @ngrx/store@16.3.0
The package @ngrx/store@16.3.0 will be installed and executed.
Would you like to proceed? Yes
√ Packages successfully installed.
UPDATE src/app/app.module.ts (469 bytes)
UPDATE package.json (1067 bytes)
√ Packages installed successfully.

 

3. ทดสอบว่าติดตั้ง NgRx สำเร็จโดยการเปิดไฟล์ src/app/app.module.ts จะเห็นโค้ดการ import StoreModule จาก @ngrx/store และ imports StoreModule

import { StoreModule } from '@ngrx/store';
...

@NgModule({
  imports: [
  	...
    StoreModule.forRoot({}, {})
  ],
})
export class AppModule { }

 

ตัวอย่าง ปัญหาการติดตั้ง NgRx ใน Angular ไม่สำเร็จ

ปัญหาส่วนใหญ่ที่ทำให้ติดตั้ง NgRx ไม่สำเร็จคือ ใช้ Angular เวอร์ชันไม่ตรงกับ NgRx เช่น ปัจจุบัน Angular เวอร์ชัน 17.x.x แต่ NgRx เวอร์ชัน 16.x.x เมื่อติดตั้งจะเกิดปัญหาเช่น

npm ERR! code ERESOLVE
npm ERR! ERESOLVE unable to resolve dependency tree
npm ERR!
npm ERR! While resolving: my-rx@0.0.0
npm ERR! Found: @angular/core@17.0.3
npm ERR! node_modules/@angular/core
npm ERR!   @angular/core@"^17.0.0" from the root project
npm ERR!
npm ERR! Could not resolve dependency:
npm ERR! peer @angular/core@"^16.0.0" from @ngrx/store@16.3.0
npm ERR! node_modules/@ngrx/store
npm ERR!   @ngrx/store@"16.3.0" from the root project

 

สรุป การติดตั้ง NgRx ใน Angular แนะนำให้ติดตั้งเวอร์ชันเดียวกัน ตัวอย่าง Angular เวอร์ชัน 16.2 ก็ติดตั้ง NgRx เวอร์ชัน 16.3 ซึ่งถือว่าเป็นรุ่นเดียวกัน ใกล้เคียงกัน

แก้ไข 1 ปีที่แล้ว
ชอบ
ลิ้งก์
แชร์
Devdit มีช่อง YouTube แล้ว
เราสร้างวิดีโอเกี่ยวกับเทคโนโลยี ทำตามง่ายๆ