(Print) Use this randomly generated list as your call list when playing the game. There is no need to say the BINGO column name. Place some kind of mark (like an X, a checkmark, a dot, tally mark, etc) on each cell as you announce it, to keep track. You can also cut out each item, place them in a bag and pull words from the bag.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
Not using `key` attribute in v-for loops.
Using `this` instead of `ref()` or `reactive()` in Composition API.
Excessive logic in Vue templates.
Missing default values for optional props.
No strict type-checking with TypeScript.
No global state management (e.g., Vuex or Pinia) for shared data.
Not using `v-model` for two-way binding where appropriate.
Global imports instead of lazy-loading components.
Direct DOM manipulation in Vue methods.
Overloading a single component with multiple responsibilities.
Mutating props directly in child components.
Not defining types for component props.
No separation of concerns (e.g., mixing logic and view).
Missing `defineProps` and `defineEmits` in Composition API.
No linting tools configured (e.g., ESLint + TypeScript rules).
Overusing `any` type instead of specific types or interfaces.
Improper use of lifecycle hooks (e.g., heavy logic in `mounted`).
Duplicated or unused TypeScript interfaces.
Hardcoded API URLs or configurations.
Leaving debugging code (e.g., `console.log`) in production.