TutorialsScreencastsCourses
Jason Brown
Create a Virtualized List with Auto Sizing Cells using react-virtualized and CellMeasurer

In this lesson we'll use CellMeasurer and CellMeasurerCache to automatically calculate and cache the height of a row. This will allow us to remove the predefined rowHeight on list and allow for dynamically sized rows.

ReactWatch ⇨
Jason Brown
Create an Auto Resizing Virtualized List with react-virtualized

In this lesson we'll show how to use the AutoSizer component from react-virtualized to automatically measure the width/height of our content area. We'll then use theList component to render our set of data as a virtualized list into the DOM using windowing.

Jason Brown
Use Yarn to Create an Alternative Import Name of an Installed Library

In this lesson we'll show how to use yarn to alias the names of same npm libraries but install different versions. This could allow for easy migrating from one library version to an upgraded version.

JavaScriptWatch ⇨
Jason Brown
Convert Imperative Code to a Declarative React Component

In this lesson we'll show how to take a beforeUnload call and convert it to a declarative React Component. It will handle subscribing to events, and automatically unsubscribing to prevent memory leaks.

Jason Brown
Convert CommonJS Requires to ES6 Imports

In this lesson we'll use cjs-to-es6 to convert CommonJS requires to ES6 imports. We'll also show how to convert over a exported default object to take advantage of named exports.

JavaScriptWatch ⇨
Jason Brown
Show An Error Message When A Video Fails to Load in React Native

In this lesson we'll show to use the onError callback from react-native-video. We'll show how to put a separate view to cover the video and render an error icon from react-native-vector-icons. Finally we'll add custom error messages based upon the error code returned.

React NativeWatch ⇨
Jason Brown
Show an Animated Buffering Icon When Remote Videos are Loading in React Native

In this lesson we'll show how to use icons from react-native-vector-icons. With absolute positioning we'll center the icon over the video. Then we'll use the Animated.loop call to rotate the icon continuously in a 360 degree loop. Finally we'll the stopAnimation call to pause the animation when we are no longer buffering.

React NativeWatch ⇨
Jason Brown
Build Interactive Video Controls that Animate Visible and Hidden for React Native Video

We'll modify our previous controls to animate visible when the video is touched or interacted with. The video controls will animate visible in when the video is touched, played, or continues to be interacted with. After a 1500ms timeout elapses the controls will animate away.

React NativeWatch ⇨
Jason Brown
Create Custom Controls for React Native Video

In this lesson we'll use react-native-vector-icons to add play/paused buttons, a seek bar, and the duration of the video. We'll use the onLoad, onProgress, and onEnd callbacks to track the video progress. We'll use the react-native-progress to create an animated progress bar for us. Finally with TouchableWithoutFeedback we will add a tap to seek interaction to jump to specific times in the video.

React NativeWatch ⇨
Jason Brown
Fix Only Committed Files with Prettier and lint-staged

In this lesson we'll use prettier and lint-staged to run prettier only on files that have been changed and committed to git. This will allow you to prettify files as you change them, and prevent massive lint only git check ins.

JavaScriptWatch ⇨
« Previous
4 of 7
Home