인터페이스는 현지화되어 있으며, Skill 소개와 설명 문서는 선택한 언어로 AI가 자동 번역합니다. 코드·명령어·경로·전문 용어는 원문을 유지하며 원작자 문서가 우선합니다.
Skills 둘러보기
생산성 및 협업 · SKILL.md

react-native-expertise

react-native-expertise

Expert knowledge in React Native, focusing on FlatList optimization and OTA Updates.

Independent GitHub snapshot · Automated classification · Original documentation governs

Skill 문서

GitHub

name: react-native-expertise description: Expert knowledge in React Native, focusing on FlatList optimization and OTA Updates.

React Native Expertise

FlatList Optimization

To ensure smooth scrolling in FlatList:

  • Use removeClippedSubviews={true}.
  • Implement getItemLayout for fixed-height items.
  • Memoize renderItem using React.memo or useCallback.
  • Use keyExtractor with stable unique keys.
import React, { useCallback } from 'react';
import { FlatList, View, Text } from 'react-native';

const Item = React.memo(({ title }) => (
  <View style={{ height: 50 }}><Text>{title}</Text></View>
));

export const OptimizedList = ({ data }) => {
  const renderItem = useCallback(({ item }) => <Item title={item.title} />, []);
  const getItemLayout = useCallback((data, index) => (
    { length: 50, offset: 50 * index, index }
  ), []);

  return (
    <FlatList
      data={data}
      renderItem={renderItem}
      keyExtractor={item => item.id}
      getItemLayout={getItemLayout}
      removeClippedSubviews={true}
      maxToRenderPerBatch={10}
      windowSize={5}
    />
  );
};

OTA Updates

OTA updates allow you to ship bug fixes and small features instantly.

  • Always verify compatibility between JS bundle and native layer before deploying.
  • Ensure critical paths handle update download failures gracefully.
%%{init: {"theme": "default", "flowchart": {"useMaxWidth": true}}}%%
flowchart TD
    A[Trigger OTA Update] --> B{Check Native Version}
    B -- Matches --> C[Download JS Bundle]
    B -- Mismatch --> D[Require App Store Update]
    C --> E[Apply Update on Next Restart]
저장한 Skills