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