- Fix Error Native Binding @tailwindcss/oxide di pnpm Workspace dengan Next.js· 4 menit baca
Dapat error 'Cannot find native binding' untuk @tailwindcss/oxide di pnpm workspace dengan Next.js Turbopack? Ini penyebab dan cara fixnya.
- Cara Trigger React Error Boundary (Dev dan Test)· 4 menit baca
Trigger React error boundary dengan throw saat render, test fallback di Jest, dan showBoundary untuk error async atau event handler.
- Cara Mock IntersectionObserver di Setup Jest· 4 menit baca
Fix error `IntersectionObserver is not defined` di Jest dengan global mock di `jest.setup.ts`. Termasuk setup TypeScript yang aman plus contoh test nyata.
- Check If Clicked Element Is Descendant Close On Click Outside· 3 menit baca
Deteksi klik di luar modal atau dropdown di React dengan Node.contains(), lalu tutup dengan mengecek apakah elemen yang diklik adalah descendant.
- Eslint Enforce Named Function In Useeffect· 2 menit baca
Anonymous function di useEffect muncul sebagai 'Anonymous function' di stack trace. Tiga cara memberi nama effect: plugin, custom rule, atau pola kode.
- Mengatasi "Property 'value' does not exist on type 'EventTarget'"· 2 menit baca
TypeScript menganggap event.target bertipe EventTarget yang tidak punya value. Pakai React.ChangeEvent<HTMLInputElement> atau cast target ke HTMLInputElement.
- Mengatasi useRef "Property does not exist on type 'never'"· 2 menit baca
useRef(null) tanpa type argument membuat ref.current bertipe 'never'. Tambahkan tipe elemennya, misalnya useRef<HTMLInputElement>(null).
- Mengatasi Jest "window.matchMedia is not a function"· 3 menit baca
jsdom di Jest tidak punya window.matchMedia, jadi komponen yang memanggilnya melempar TypeError. Tambahkan mock matchMedia di file setup Jest.
- Cara Handle CORS Saat Pakai json-server· 3 menit baca
Fix CORS error di json-server dengan custom server.js dan middleware. Termasuk cara handle preflight OPTIONS dan kapan pakai wildcard vs origin spesifik.
- 5 Contoh Aplikasi untuk Belajar JavaScript· 10 menit baca
5 contoh aplikasi JavaScript sederhana untuk pemula: Hello World, Timer, Menu Navigasi, Validasi Login, dan Form Order, lengkap dengan penjelasan kodenya.
- Cara Mengatasi Error Jest "Not implemented: window.scrollTo"· 1 menit baca
Cara mengatasi error Jest jsdom "Not implemented: window.scrollTo" dengan mock window.scrollTo di file setup, plus contoh test untuk memastikan mock jalan.
- Cara Mengatasi Error "ResizeObserver is not defined" di Jest· 1 menit baca
Cara mengatasi error "ResizeObserver is not defined" di Jest dengan mock ResizeObserver di file setup, supaya unit test kode dengan API browser bisa jalan.
- Testing Komponen Image Next.js· 3 menit baca
Cara simpel menguji Next.js Image di Jest dengan me-mock-nya sebagai tag img biasa, lengkap dengan contoh test, setup file, dan kesalahan yang umum terjadi.
- Testing Library next-i18next dengan Jest· 2 menit baca
Cara simpel menguji next-i18next di Jest dengan me-mock hook translation, supaya test komponen tetap fokus dan stabil, plus kapan perlu setup i18n penuh.
- Cara Mengatasi Error 'Cannot use import statement outside a module' saat Mocking Swiper JS dengan Jest· 2 menit baca
Atasi error Jest "Cannot use import statement outside a module" saat mocking Swiper dengan transformIgnorePatterns, plus cara mock Swiper di unit test.
- Mengatasi Error Jest EMFILE Too Many Open Files· 2 menit baca
Atasi error Jest EMFILE too many open files dengan menurunkan maxWorkers, mengabaikan folder build, menaikkan ulimit, dan menjalankan runInBand di CI.
- Panduan Mocking useRouter Next.js dengan Jest untuk Testing yang Efektif· 2 menit baca
Mock useRouter Next.js di Jest dengan pola yang andal untuk pathname, query, dan assertion push di test komponen, termasuk catatan App Router.
- Setup Nodemon dengan Babel· 2 menit baca
Cara cepat memulai project Node.js dengan nodemon dan Babel: install package, buat .babelrc, dan tambahkan start script supaya bisa pakai sintaks JavaScript modern.
- Konfigurasi Webpack: Menyertakan Locale Moment.js Tertentu· 2 menit baca
Cara menyimpan hanya locale Moment.js yang dibutuhkan di Webpack dengan ContextReplacementPlugin untuk memangkas ukuran bundle dan menghindari semua locale.
- Debug Pemanggil window.scrollTo di Test Jest· 1 menit baca
Cari tahu persis siapa yang memanggil window.scrollTo di test Jest memakai console.trace, jest.spyOn, dan beberapa langkah cepat untuk mempersempit pemicunya.