บางทีเราไม่ได้อยากสร้างฟังก์ชั่นนี้ทุกหน้า เพราะมันมีการเรียกหลายๆ หน้า ไม่ได้เรียกหน้าเดียว เช่น อันนี้อยากสร้างฟังก์ชั่นที่จะ Mock up อาเรย์เพื่อทำการวนลูปแบบไม่ต้องมีข้อมูล ปกติเราต้องเขียนแบบนี้
// file: pages/index.vue <template> <ul> <li v-for="item in Array.from({ length: length }, (_, i) => i + 1)">{{ item }}</li> </ul> </template>
สร้างโฟลเดอร์ composables
โฟลเดอร์นี้จะเป็นคล้ายๆ โฟลเดอร์ assets/js แหละ แต่เวลาเราจะเรียกใช้งานฟังก์ชั่นภายใน เราสามารถเรียกใช้ได้เลย โดยที่ไม่ต้อง import ไฟล์เข้ามาก่อน
// file: composables/generator.js export const generateMockupArray = (length) => { return Array.from({ length: length }, (_, i) => i + 1); }
พอมีฟังก์ชั่นนี้แล้ว ตัวหน้าแสดงผลก็จะเหลือแค่นี้ อ่านเข้าใจง่ายกว่าเยอะ
// file: pages/index.vue <template> <ul> <li v-for="item in generateMockupArray(10)">{{ item }}</li> </ul> </template>