(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
Direct DOM manipulation in Vue methods.
Not defining types for component props.
Hardcoded strings instead of localization (i18n).
Overloading a single component with multiple responsibilities.
Missing or poorly written unit tests.
Leaving debugging code (e.g., `console.log`) in production.
No error boundary handling for child components.
Improper use of lifecycle hooks (e.g., heavy logic in `mounted`).
Global imports instead of lazy-loading components.
No strict type-checking with TypeScript.
Duplicated or unused TypeScript interfaces.
Overusing `any` type instead of specific types or interfaces.
Missing default values for optional props.
Excessive logic in Vue templates.
Circular dependencies in component imports.
Mutating props directly in child components.
No linting tools configured (e.g., ESLint + TypeScript rules).
No global state management (e.g., Vuex or Pinia) for shared data.
Not using `key` attribute in v-for loops.
Hardcoded API URLs or configurations.
No separation of concerns (e.g., mixing logic and view).
Using `this` instead of `ref()` or `reactive()` in Composition API.
Missing `defineProps` and `defineEmits` in Composition API.
Not using `v-model` for two-way binding where appropriate.