Можно ли использовать @ эмоции / ядро ​​@ эмоции / стилизованные темы эмоций с электроном? - PullRequest
0 голосов
/ 19 июня 2020

Я пытаюсь интегрировать эмоции в свое электронное приложение, но у меня проблемы, и я не могу найти ни слова об этом. Я использую шаблон шаблон электронного реагирования . Кажется, что все работает во время разработки, но как только я создаю для производства, я получаю эту ошибку:

enter image description here

Любые рекомендации или помощь будут здорово! Я видел, что есть некоторые расширенные параметры с темами эмоций, которые мне, возможно, понадобятся, например CacheProvider, но я не знаю, как использовать их с электроном ....

Спасибо!

1 Ответ

0 голосов
/ 19 июня 2020

Разобрался. В app/index.tsx вам нужно установить контейнер, в который скрипты будут вставляться вручную, используя CacheProvider и createCache, поскольку фактический ReactDOM.render происходит внутри приемника событий документа. Полный index.tsx файл здесь:

import 'styles/index.css'

import createCache from '@emotion/cache'
import { CacheProvider } from '@emotion/core'
import React, { Fragment } from 'react'
import { render } from 'react-dom'
import { AppContainer as ReactHotAppContainer } from 'react-hot-loader'

import Root from './containers/Root'
import { configureStore } from './store/configureStore'

const AppContainer = process.env.PLAIN_HMR ? Fragment : ReactHotAppContainer

const { store, persistor } = configureStore()

document.addEventListener('DOMContentLoaded', async () => {
    const myCache = createCache({
        container: document.head,
    })

    // Render
    return render(
        <CacheProvider value={myCache}>
            <AppContainer>
                <Root store={store} persistor={persistor} />
            </AppContainer>
        </CacheProvider>,
        document.getElementById('root')
    )
})
...