26 items
Bridge Boundary Sync Call Bug
Code QuizBridge vs JSI Architecture Trade-offs
QuizMVVM ViewModel State Mutation Bug
Code QuizLayered Architecture and State Ownership
QuizNative vs JS Boundary: Bridge vs JSI
FlashcardNative vs JS Boundary Trade-offs
Slides / VideoZustand Selector Causing Re-renders
Code QuizState Ownership & Navigation in SwiftUI
QuizLayer Dependency Violation in MVVM
Code QuizLayered Architecture: Domain Layer Role
QuizState & Navigation Architecture
Slides / VideoLayered Architecture: Presentation, Domain, Data
Slides / VideoState Management & Navigation Architecture
FlashcardLayered Architecture: Presentation, Domain, Data
FlashcardViewModel Breaks Separation of Concerns
Code QuizSeparating UI, State & Data Layers
QuizRedux Store Never Updates
Code QuizContext vs Redux State Management
QuizState Patterns: Context vs Redux
Slides / VideoSeparation of Concerns in iOS
Slides / VideoState Management: Environment vs Redux
FlashcardSeparation of Concerns in iOS Architecture
FlashcardState Management Patterns
FlashcardState Management Patterns Compared
Slides / VideoComponent UI & Separation of Concerns
Slides / VideoSeparation of Concerns in UI Architecture
FlashcardBridge Boundary Sync Call Bug
Spot why reading a native bridge result synchronously breaks a React Native MVVM view model.
// Native side (iOS):
// RCT_EXPORT_METHOD(getAuthToken:(RCTPromiseResolveBlock)resolve
// rejecter:(RCTPromiseRejectBlock)reject) {
// resolve(self.keychain.token);
// }
import { NativeModules } from 'react-native';
const { AuthBridge } = NativeModules;
class SessionViewModel {
loadToken() {
// Read the token from the native keychain module
const token = AuthBridge.getAuthToken();
this.token = token;
this.isAuthenticated = token != null;
return this.token;
}
}
const vm = new SessionViewModel();
console.log(vm.loadToken());What is the bug in this code, and how should it be fixed?