BeFreed
    Categories>Technology>React State Mistakes: Stop Storing Derived Data

    React State Mistakes: Stop Storing Derived Data

    22 分钟
    |
    |
    2026年3月31日
    TechnologyEducationProductivity

    Managing filtered lists in state often leads to bugs and extra renders. Learn why calculating values on the fly keeps your UI in sync and your code clean.

    React State Mistakes: Stop Storing Derived Data

    React State Mistakes: Stop Storing Derived Data最佳语录

    “

    The golden rule is simple: if you can calculate it from existing state, don’t store it. When you store derived data in state, you are essentially adding a middleman that creates synchronization drift.

    ”

    此音频课程由 BeFreed 社区成员创建

    输入问题

    Teach why you should not store calculated values in state. Use filteredEpisodes example. Give rule: if you can calculate it from existing state, don’t store it.

    主持声音
    Lenaplay
    Jacksonplay
    学习风格
    趣味
    知识来源
    Developing Backbone.js Applications
    Two Scoops of Django
    Refactoring
    Clean Code
    How to Measure Anything
    A Philosophy of Software Design, 2nd Edition

    常见问题

    Synchronization drift occurs when a developer stores derived data in a separate state variable, such as keeping a filteredList state alongside a rawData state. This creates a situation where two "clocks" must be manually kept in sync. If a developer forgets to update the second state when the first one changes—like when new data arrives from a server—the UI will display stale or incorrect information. This approach also often leads to "double renders" because React must first render the change to the source state and then trigger a second render once a useEffect updates the derived state.

    The golden rule is that if a value can be calculated from existing props or state, it should not be stored in its own state. You should treat your component as a pure function where props and raw data are the "sources of truth" and everything else is a "transformation." For example, instead of using useState for a boolean like isEmpty, you should simply calculate const isEmpty = data.length === 0 directly in the component body. This ensures the UI is always a direct, accurate reflection of the underlying data.

    While most JavaScript array operations like filtering or sorting are fast enough to run on every render, useMemo should be used in two specific scenarios. First, it acts as a "sticky note" for expensive calculations that take longer than one millisecond, preventing them from re-running unless their specific dependencies change. Second, it is used to maintain "referential equality." Since React compares objects and arrays by reference, useMemo ensures that a derived array maintains the same identity across renders, preventing unnecessary re-render waterfalls in child components wrapped in React.memo.

    The "State + Effect" combo—where a useState hook is immediately followed by a useEffect that updates a different state—is a primary indicator of duplicated state. This pattern adds unnecessary cognitive load to the code and makes it harder to test because the logic is trapped inside lifecycle hooks. By refactoring this into a simple variable or a derived calculation, you remove the "middleman," reduce the lines of code, and eliminate the possibility of "impossible states" where different parts of the UI disagree with each other.

    发现更多

    deep react knowledge

    deep react knowledge

    学习计划

    deep react knowledge

    React continues to dominate the frontend development landscape, but mastering its core concepts and advanced patterns is essential for building professional-grade applications. This learning plan is ideal for developers who have basic JavaScript knowledge and want to become proficient React engineers capable of building complex, performant applications.

    2 h 22 m•3 章节
    I want to learn how to write react front end

    I want to learn how to write react front end

    学习计划

    I want to learn how to write react front end

    React continues to be the most popular JavaScript library for building user interfaces, powering millions of web applications. This learning plan takes you from React fundamentals to advanced architecture patterns, ideal for developers looking to build modern, performant front-end applications.

    3 h 42 m•4 章节
    Master Go, React, and JavaScript Development

    Master Go, React, and JavaScript Development

    学习计划

    Master Go, React, and JavaScript Development

    This plan is essential for developers aiming to bridge the gap between frontend and backend mastery using modern frameworks. It is ideal for aspiring full-stack engineers who want to build scalable, high-performance applications with Go and React.

    4 h 5 m•4 章节
    Improve the user experience of the app.

    Improve the user experience of the app.

    学习计划

    Improve the user experience of the app.

    This learning plan is essential for product managers and designers looking to bridge the gap between aesthetics and functional business results. It provides a comprehensive roadmap for anyone wanting to master the psychological and data-driven aspects of modern app design.

    2 h 38 m•4 章节
    Stop Overthinking and Take Action

    Stop Overthinking and Take Action

    学习计划

    Stop Overthinking and Take Action

    Overthinking traps millions in endless loops of analysis that prevent meaningful progress and cause unnecessary stress. This learning plan equips anyone struggling with decision paralysis or procrastination with practical tools to break free from mental gridlock and take consistent, purposeful action.

    1 h 49 m•5 章节
    js read

    js read

    学习计划

    js read

    This plan bridges the gap between basic coding and professional web development. It is ideal for aspiring developers looking to master modern JavaScript, from UI interactivity to scalable application architecture.

    2 h 14 m•4 章节
    Teach well, cut friction, ignore signaling.

    Teach well, cut friction, ignore signaling.

    学习计划

    Teach well, cut friction, ignore signaling.

    This plan is designed for educators, designers, and leaders who want to move beyond superficial metrics and performative teaching. It bridges the gap between cognitive science and systems design to help professionals deliver high-impact results with minimal waste.

    2 h 42 m•4 章节
    Stop doomscrolling

    Stop doomscrolling

    学习计划

    Stop doomscrolling

    In an era of persuasive design, many struggle with involuntary device usage that erodes mental clarity and productivity. This plan is essential for anyone feeling overwhelmed by their phone who wants to regain control over their attention and mental health.

    2 h 28 m•4 章节

    由哥伦比亚大学校友在旧金山创建

    BeFreed 汇聚了全球超过 1,000,000 求知若渴的学习者
    查看更多网络上关于 BeFreed 的讨论

    "Instead of endless scrolling, I just hit play on BeFreed. It saves me so much time."

    @Moemenn
    platform
    star
    star
    star
    star
    star

    "I never knew where to start with nonfiction—BeFreed’s book lists turned into podcasts gave me a clear path."

    @Chloe, Solo founder, LA
    platform
    comments
    12
    likes
    117

    "Perfect balance between learning and entertainment. Finished ‘Thinking, Fast and Slow’ on my commute this week."

    @Raaaaaachelw
    platform
    star
    star
    star
    star
    star

    "Crazy how much I learned while walking the dog. BeFreed = small habits → big gains."

    @Matt, YC alum
    platform
    comments
    12
    likes
    108

    "Reading used to feel like a chore. Now it’s just part of my lifestyle."

    @Erin, Investment Banking Associate , NYC
    platform
    comments
    254
    likes
    17

    "Feels effortless compared to reading. I’ve finished 6 books this month already."

    @djmikemoore
    platform
    star
    star
    star
    star
    star

    "BeFreed turned my guilty doomscrolling into something that feels productive and inspiring."

    @Pitiful
    platform
    comments
    96
    likes
    4.5K

    "BeFreed turned my commute into learning time. 20-min podcasts are perfect for finishing books I never had time for."

    @SofiaP
    platform
    star
    star
    star
    star
    star

    "BeFreed replaced my podcast queue. Imagine Spotify for books — that’s it. 🙌"

    @Jaded_Falcon
    platform
    comments
    201
    thumbsUp
    16

    "It is great for me to learn something from the book without reading it."

    @OojasSalunke
    platform
    star
    star
    star
    star
    star

    "The themed book list podcasts help me connect ideas across authors—like a guided audio journey."

    @Leo, Law Student, UPenn
    platform
    comments
    37
    likes
    483

    "Makes me feel smarter every time before going to work"

    @Cashflowbubu
    platform
    star
    star
    star
    star
    star

    由哥伦比亚大学校友在旧金山创建

    BeFreed 汇聚了全球超过 1,000,000 求知若渴的学习者
    查看更多网络上关于 BeFreed 的讨论

    "Instead of endless scrolling, I just hit play on BeFreed. It saves me so much time."

    @Moemenn
    platform
    star
    star
    star
    star
    star

    "I never knew where to start with nonfiction—BeFreed’s book lists turned into podcasts gave me a clear path."

    @Chloe, Solo founder, LA
    platform
    comments
    12
    likes
    117

    "Perfect balance between learning and entertainment. Finished ‘Thinking, Fast and Slow’ on my commute this week."

    @Raaaaaachelw
    platform
    star
    star
    star
    star
    star

    "Crazy how much I learned while walking the dog. BeFreed = small habits → big gains."

    @Matt, YC alum
    platform
    comments
    12
    likes
    108

    "Reading used to feel like a chore. Now it’s just part of my lifestyle."

    @Erin, Investment Banking Associate , NYC
    platform
    comments
    254
    likes
    17

    "Feels effortless compared to reading. I’ve finished 6 books this month already."

    @djmikemoore
    platform
    star
    star
    star
    star
    star

    "BeFreed turned my guilty doomscrolling into something that feels productive and inspiring."

    @Pitiful
    platform
    comments
    96
    likes
    4.5K

    "BeFreed turned my commute into learning time. 20-min podcasts are perfect for finishing books I never had time for."

    @SofiaP
    platform
    star
    star
    star
    star
    star

    "BeFreed replaced my podcast queue. Imagine Spotify for books — that’s it. 🙌"

    @Jaded_Falcon
    platform
    comments
    201
    thumbsUp
    16

    "It is great for me to learn something from the book without reading it."

    @OojasSalunke
    platform
    star
    star
    star
    star
    star

    "The themed book list podcasts help me connect ideas across authors—like a guided audio journey."

    @Leo, Law Student, UPenn
    platform
    comments
    37
    likes
    483

    "Makes me feel smarter every time before going to work"

    @Cashflowbubu
    platform
    star
    star
    star
    star
    star

    "Instead of endless scrolling, I just hit play on BeFreed. It saves me so much time."

    @Moemenn
    platform
    star
    star
    star
    star
    star

    "I never knew where to start with nonfiction—BeFreed’s book lists turned into podcasts gave me a clear path."

    @Chloe, Solo founder, LA
    platform
    comments
    12
    likes
    117

    "Perfect balance between learning and entertainment. Finished ‘Thinking, Fast and Slow’ on my commute this week."

    @Raaaaaachelw
    platform
    star
    star
    star
    star
    star

    "Crazy how much I learned while walking the dog. BeFreed = small habits → big gains."

    @Matt, YC alum
    platform
    comments
    12
    likes
    108

    "Reading used to feel like a chore. Now it’s just part of my lifestyle."

    @Erin, Investment Banking Associate , NYC
    platform
    comments
    254
    likes
    17

    "Feels effortless compared to reading. I’ve finished 6 books this month already."

    @djmikemoore
    platform
    star
    star
    star
    star
    star

    "BeFreed turned my guilty doomscrolling into something that feels productive and inspiring."

    @Pitiful
    platform
    comments
    96
    likes
    4.5K

    "BeFreed turned my commute into learning time. 20-min podcasts are perfect for finishing books I never had time for."

    @SofiaP
    platform
    star
    star
    star
    star
    star

    "BeFreed replaced my podcast queue. Imagine Spotify for books — that’s it. 🙌"

    @Jaded_Falcon
    platform
    comments
    201
    thumbsUp
    16

    "It is great for me to learn something from the book without reading it."

    @OojasSalunke
    platform
    star
    star
    star
    star
    star

    "The themed book list podcasts help me connect ideas across authors—like a guided audio journey."

    @Leo, Law Student, UPenn
    platform
    comments
    37
    likes
    483

    "Makes me feel smarter every time before going to work"

    @Cashflowbubu
    platform
    star
    star
    star
    star
    star

    "Instead of endless scrolling, I just hit play on BeFreed. It saves me so much time."

    @Moemenn
    platform
    star
    star
    star
    star
    star

    "I never knew where to start with nonfiction—BeFreed’s book lists turned into podcasts gave me a clear path."

    @Chloe, Solo founder, LA
    platform
    comments
    12
    likes
    117

    "Perfect balance between learning and entertainment. Finished ‘Thinking, Fast and Slow’ on my commute this week."

    @Raaaaaachelw
    platform
    star
    star
    star
    star
    star

    "Crazy how much I learned while walking the dog. BeFreed = small habits → big gains."

    @Matt, YC alum
    platform
    comments
    12
    likes
    108

    "Reading used to feel like a chore. Now it’s just part of my lifestyle."

    @Erin, Investment Banking Associate , NYC
    platform
    comments
    254
    likes
    17

    "Feels effortless compared to reading. I’ve finished 6 books this month already."

    @djmikemoore
    platform
    star
    star
    star
    star
    star

    "BeFreed turned my guilty doomscrolling into something that feels productive and inspiring."

    @Pitiful
    platform
    comments
    96
    likes
    4.5K

    "BeFreed turned my commute into learning time. 20-min podcasts are perfect for finishing books I never had time for."

    @SofiaP
    platform
    star
    star
    star
    star
    star

    "BeFreed replaced my podcast queue. Imagine Spotify for books — that’s it. 🙌"

    @Jaded_Falcon
    platform
    comments
    201
    thumbsUp
    16

    "It is great for me to learn something from the book without reading it."

    @OojasSalunke
    platform
    star
    star
    star
    star
    star

    "The themed book list podcasts help me connect ideas across authors—like a guided audio journey."

    @Leo, Law Student, UPenn
    platform
    comments
    37
    likes
    483

    "Makes me feel smarter every time before going to work"

    @Cashflowbubu
    platform
    star
    star
    star
    star
    star
    1.5K Ratings4.7
    开启你的学习之旅,就是现在
    BeFreed App
    BeFreed

    个性化学习,无所不能

    DiscordLinkedIn
    精选书籍摘要
    Crucial ConversationsThe Perfect MarriageInto the WildNever Split the DifferenceAttachedGood to GreatSay Nothing
    热门分类
    Self HelpCommunication SkillRelationshipMindfulnessPhilosophyInspirationProductivity
    名人书单
    Elon MuskCharlie KirkBill GatesSteve JobsAndrew HubermanJoe RoganJordan Peterson
    获奖作品
    Pulitzer PrizeNational Book AwardGoodreads Choice AwardsNobel Prize in LiteratureNew York TimesCaldecott MedalNebula Award
    精选主题
    ManagementAmerican HistoryWarTradingStoicismAnxietySex
    年度最佳书籍
    2025 Best Non Fiction Books2024 Best Non Fiction Books2023 Best Non Fiction Books
    精选作者
    Chimamanda Ngozi AdichieGeorge OrwellO. J. SimpsonBarbara O'NeillWinston ChurchillCharlie Kirk
    BeFreed 与其他应用对比
    BeFreed vs. Other Book Summary AppsBeFreed vs. ElevenReaderBeFreed vs. ReadwiseBeFreed vs. Anki
    学习工具
    Knowledge VisualizerAI Podcast Generator
    更多信息
    关于我们arrow
    定价arrow
    常见问题arrow
    博客arrow
    招聘arrow
    合作伙伴arrow
    大使计划arrow
    目录arrow
    BeFreed
    Try now
    © 2026 BeFreed
    使用条款隐私政策
    BeFreed

    个性化学习,无所不能

    DiscordLinkedIn
    精选书籍摘要
    Crucial ConversationsThe Perfect MarriageInto the WildNever Split the DifferenceAttachedGood to GreatSay Nothing
    热门分类
    Self HelpCommunication SkillRelationshipMindfulnessPhilosophyInspirationProductivity
    名人书单
    Elon MuskCharlie KirkBill GatesSteve JobsAndrew HubermanJoe RoganJordan Peterson
    获奖作品
    Pulitzer PrizeNational Book AwardGoodreads Choice AwardsNobel Prize in LiteratureNew York TimesCaldecott MedalNebula Award
    精选主题
    ManagementAmerican HistoryWarTradingStoicismAnxietySex
    年度最佳书籍
    2025 Best Non Fiction Books2024 Best Non Fiction Books2023 Best Non Fiction Books
    学习工具
    Knowledge VisualizerAI Podcast Generator
    精选作者
    Chimamanda Ngozi AdichieGeorge OrwellO. J. SimpsonBarbara O'NeillWinston ChurchillCharlie Kirk
    BeFreed 与其他应用对比
    BeFreed vs. Other Book Summary AppsBeFreed vs. ElevenReaderBeFreed vs. ReadwiseBeFreed vs. Anki
    更多信息
    关于我们arrow
    定价arrow
    常见问题arrow
    博客arrow
    招聘arrow
    合作伙伴arrow
    大使计划arrow
    目录arrow
    BeFreed
    Try now
    © 2026 BeFreed
    使用条款隐私政策

    核心要点

    1

    The Danger of Duplicated State

    0:00
    0:14
    0:27
    0:34
    2

    The Synchronization Drift Trap

    0:50
    1:18
    1:32
    1:58
    2:18
    2:45
    3:06
    3:29
    3:34
    3

    The Mental Model of Pure Transformations

    3:55
    4:10
    4:28
    4:45
    5:12
    5:29
    5:50
    6:11
    6:33
    6:48
    4

    When to Reach for Memoization

    7:16
    3:06
    7:44
    8:03
    8:24
    3:34
    8:57
    9:14
    9:35
    9:49
    10:13
    10:29
    5

    The Architecture of a Data Table

    10:52
    11:11
    11:31
    11:50
    12:05
    12:28
    12:46
    12:59
    13:18
    13:35
    13:51
    14:07
    6

    Practical Playbook for Clean State

    14:27
    14:36
    7:44
    5:29
    15:32
    3:06
    16:03
    4:45
    16:30
    16:46
    17:03
    17:17
    17:33
    7

    Beyond the Component Boundary

    17:51
    18:03
    3:06
    18:35
    18:52
    19:12
    19:28
    19:46
    20:03
    7:44
    20:31
    8

    Closing Reflection and Wrap-up

    20:46
    21:03
    21:19
    21:34
    21:56
    3:06
    22:16
    5:29
    22:31

    相似内容

    Mastering Minimal State: The Golden Rule of React 书籍封面
    Developing Backbone.js ApplicationsTwo Scoops of DjangoClean CodeRefactoring: Improving the Design of Existing Code
    24 sources
    Mastering Minimal State: The Golden Rule of React
    Stop the 'Two Renders' trap by learning why derived data belongs in variables, not state. Using the filtered episodes example, we reveal how to streamline performance and simplify your React architecture.
    21 min
    Mastering React: Lifting State Up for Component Coordination 书籍封面
    Developing Backbone.js ApplicationsKubernetes PatternsBuilding MicroservicesThe Book You Wish Your Parents Had Read (and Your Children Will Be Glad That You Did)
    23 sources
    Mastering React: Lifting State Up for Component Coordination
    Learn how to sync isolated components like an EpisodeList and PlayerBar by moving state to a shared parent, ensuring a single source of truth.
    22 min
    React architecture is more than just code 书籍封面
    Developing Backbone.js ApplicationsYou Should Test ThatAccelerate: The Science of Lean Software and DevOpsMobile First
    24 sources
    React architecture is more than just code
    Stop building messy code blobs. Learn how a layered approach to state and performance creates faster apps and eliminates stale data bugs for good.
    22 min
    React State: Why Your Components Need Internal Memory 书籍封面
    Developing Backbone.js ApplicationsProgram or Be ProgrammedPython CookbookThe Mythical Man-Month
    26 sources
    React State: Why Your Components Need Internal Memory
    Static components can't handle user interaction. Learn how the useState Hook manages internal memory and triggers re-renders to build truly dynamic UIs.
    31 min
    React 19 data fetching and the new use hook 书籍封面
    Developing Backbone.js ApplicationsHookedClean CodeKubernetes Patterns
    21 sources
    React 19 data fetching and the new use hook
    Stop fighting boilerplate and manual loading states. Learn how the React 19 use hook simplifies server state so you can write cleaner, faster code.
    13 min
    Mastering React Lists: Keys, Maps, and UI Identity 书籍封面
    Developing Backbone.js ApplicationsClean CodeKubernetes PatternsA Philosophy of Software Design, 2nd Edition
    24 sources
    Mastering React Lists: Keys, Maps, and UI Identity
    Learn how React's 'internal librarian' tracks list items and why using unique keys—instead of simple indexes—is the secret to preventing chaotic UI glitches when sorting data.
    23 min
    Refactoring 书籍封面
    Refactoring
    Martin Fowler
    Transform code safely with small, behavior-preserving steps.
    9 min
    Why We Make Mistakes 书籍封面
    Why We Make Mistakes
    Joseph T. Hallinan
    Explore the fascinating science behind human error and learn how our minds trick us into making everyday mistakes.
    9 min