angular - Ionic 3 ดึงเนื้อหาของไฟล์ทรัพยากร
ฉันกำลังสร้างแอปเพื่อแสดงเนื้อหาของหนังสือ ฉันมี 3 หน้าในแอปนี้:
หน้า 1. รายการปุ่มที่ลิงก์ไปยังบทต่าง ๆ; (ChaptersPage)
หน้า 2. รายการปุ่มที่ลิงก์ไปยังหน้าของบท; (PagesPage)
หน้า 3. เนื้อหาของหน้า; (PageContentPage)
หน้าที่ 1 และ 2 อยู่ภายในแท็บ ดังนั้นเมื่อผู้ใช้เลือกบท เขาจะไปที่แท็บถัดไป จากนั้นเลือกหน้าของบทนั้นแล้วจึงดูเนื้อหาของหน้า แท็บจะมีลักษณะดังนี้:
ทุกหน้าและทุกบทอยู่ในโฟลเดอร์ของเขาเอง โฟลเดอร์แอปของฉันมีลักษณะดังนี้:
src
|_ app
|_ assets
|_ icon
|_ images
|_ chapters
|_ 1
|_page_1.txt
|_page_2.txt
|_ 2
|_page_1.txt
|_page_2.txt
|_ 3
|_page_1.txt
|_page_2.txt
|_ ...
|_ pages
|_ services
|_ ...
ก่อนอื่น เมื่อผู้ใช้เลือกบท ฉันต้องดูว่ามีกี่หน้าในโฟลเดอร์บทนั้น เพื่อที่ฉันจะได้แสดงจำนวนปุ่มที่ถูกต้อง ฉันพยายามใช้ปลั๊กอิน File ของ Ionic Native แต่ไม่สำเร็จ การใช้ตัวอย่างจากเอกสารปลั๊กอินไฟล์ ฉันมักจะได้ข้อความว่า "Directory doesn’t exist"
this.file.checkDir(this.file.applicationDirectory, 'assets/chapters/2').then(_ =>
console.log('Directory exists')
).catch(err => console.log('Directory doesnt exist'));
ดังนั้น คำถามของฉันคือ: ฉันจะอ่านได้อย่างไรว่ามีไฟล์กี่ไฟล์อยู่ในโฟลเดอร์บท? และหลังจากนั้น ฉันจะดึงเนื้อหาของ page.txt ได้อย่างไร?
คำตอบ #1
readPage() {
this.http.request('../assets/chapters/1/page_1.txt')
.map(res => res.text())
.subscribe(text => {
this.txtContent= text;
})
.catch(error => {
console.err("Path not found with error:", error);
});
}
คำตอบ #2
ก่อนอื่นให้เปลี่ยนบล็อกโค้ดนี้ ซึ่งจะพาคุณไปยังไดเร็กทอรีที่คุณต้องการ
this.file.checkDir(this.file.applicationDirectory, './chapters/2').then(_ =>
console.log('Directory exists')
).catch(err => console.log('Directory doesnt exist'));
