Giter VIP home page Giter VIP logo

Comments (4)

eaNewton avatar eaNewton commented on June 10, 2024 1

omg i got it, and now i feel stupid... for anyone else, my solution was changing /.storybook/index.js from

import { getStorybookUI } from "@storybook/react-native"

import "./storybook.requires"

const StorybookUIRoot = getStorybookUI({})

export default StorybookUIRoot

to

import { getStorybookUI } from "@storybook/react-native"
import { useFonts } from "expo-font"

import "./storybook.requires"

const StorybookUIRoot = getStorybookUI({})

const Storybook = () => {
  const [fontsLoaded] = useFonts({
    "Circular-Black": require("assets/fonts/lineto-circular-black.ttf"),
    "Circular-Black-Italic": require("assets/fonts/lineto-circular-blackItalic.ttf"),
    "Circular-Bold": require("assets/fonts/lineto-circular-bold.ttf"),
    "Circular-Bold-Italic": require("assets/fonts/lineto-circular-boldItalic.ttf"),
    "Circular-Book": require("assets/fonts/lineto-circular-book.ttf"),
    "Circular-Book-Italic": require("assets/fonts/lineto-circular-bookItalic.ttf"),
    "Circular-Medium": require("assets/fonts/lineto-circular-medium.ttf"),
    "Circular-Medium-Italic": require("assets/fonts/lineto-circular-mediumItalic.ttf"),
  })

  if (!fontsLoaded) return null

  return <StorybookUIRoot />
}

export default Storybook

thanks for pointing me in the right direction @dannyhw!

from react-native.

dannyhw avatar dannyhw commented on June 10, 2024

@eaNewton adding fonts should work the same as it would in any react native app.

You'd probably be better off putting the font loading one layer up instead of in a decorator since it only needs to run once.

Like

const Storybook = ()=> {
    const [fontsloaded] = useFonts(/* ... stuff here ... */);
    return   <StorybookUIRoot/>
}

from react-native.

eaNewton avatar eaNewton commented on June 10, 2024

@dannyhw sorry, could you clarify - that should go in /.storybook/index.js? right now that file looks like

import { getStorybookUI } from "@storybook/react-native"

import "./storybook.requires"

const StorybookUIRoot = getStorybookUI({})

export default StorybookUIRoot

StorybookUIRoot is defined here, as far as i can tell it isn't exported by the library itself, only the getStorybookUI function. the only other place would be in my main layout file potentially, though i'm not sure how that would work, since i'm doing the RN app/storybook switch at the bottom of the file like

let AppEntryPoint = AppLayout;

if (Constants?.expoConfig?.extra?.storybookEnabled === "true") {
  AppEntryPoint = require("../.storybook").default;
}

export default AppEntryPoint;

can you point me in the direction of any sort of documentation that might exist on this subject? thanks!

from react-native.

dannyhw avatar dannyhw commented on June 10, 2024

@eaNewton nice, glad you got it sorted 🙏 .

from react-native.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.