Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/34.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在React中使用危险的html时,防止在css之前加载html_Html_Css_Reactjs_Rendering - Fatal编程技术网

在React中使用危险的html时,防止在css之前加载html

在React中使用危险的html时,防止在css之前加载html,html,css,reactjs,rendering,Html,Css,Reactjs,Rendering,我有一个React应用程序,我需要从第三方获取标题html。第三方在初始化时向我传递一个对象,该对象如下所示: headerObj:{desktopHeaderHtml:…,css:{ const desktopHeader={uuu html:`${props.navigation.css}${props.navigation.desktopHeaderHtml}}} 返回( ) } 导出默认应用程序 然而,我的应用程序在加载样式之前呈现原始HTML,因此我从desktopHeader获得了

我有一个React应用程序,我需要从第三方获取标题html。第三方在初始化时向我传递一个对象,该对象如下所示:

headerObj:{desktopHeaderHtml:…,css:{
const desktopHeader={uuu html:`${props.navigation.css}${props.navigation.desktopHeaderHtml}}}
返回(
)
}
导出默认应用程序

然而,我的应用程序在加载样式之前呈现原始HTML,因此我从
desktopHeader
获得了一段短时间的可见非样式HTML。有什么方法可以避免这种情况吗?我觉得我遗漏了一些东西。

如果其他人偶然发现这一点,我就知道问题出在哪里了

css提供了一个链接,而html只是提供了标记。因此,当调用
危险的SetinenerHTML
时,它会立即注入这两种内容,但显然css加载需要一秒钟,因为必须执行链接的href并实际获取css。我通过在原始html中添加调用css的链接来解决这个问题文件,以便在webpack之前调用它

import React, { Fragment } from 'react'
import ProductList from './products/ProductList'

const App = (props) => {
  const desktopHeader = {__html: `${props.navigation.css}${props.navigation.desktopHeaderHtml}`}

  return (
    <Fragment>
      <div dangerouslySetInnerHTML={ desktopHeader } />
      <ProductList />
    </Fragment>
  )
}

export default App