浏览器是否接收到了React代码,并在前端将其呈现为纯html,还是将其呈现为后端的纯html,而浏览器只是从服务器接收到这个普通html?
发布于 2020-12-05 23:28:11
在vanilla React应用程序(不使用服务器端呈现)中,有两个选项:
<h1>将变成React.createElement('h1')。(此生成过程仅在程序员对代码进行更改时发生。)然后,客户端被发送转移的香草代码。这是迄今为止最常见的技术。这里有一个使用Babel标准编译和运行JSX的示例,它完全在客户端:
<script crossorigin src="https://unpkg.com/react@16/umd/react.development.js"></script>
<script crossorigin src="https://unpkg.com/react-dom@16/umd/react-dom.development.js"></script>
<script src="https://cdn.jsdelivr.net/npm/babel-standalone@6.10.3/babel.min.js" crossorigin="anonymous"></script>
<script type="text/babel">
const App = () => {
return 'app';
};
ReactDOM.render(<App />, document.querySelector('.react'));
</script>
<div class="react"></div>
但是偶尔应用程序会使用服务器端呈现,其中逻辑主要在服务器上运行,然后服务器将普通的HTML标记发送到客户端,然后客户端显示它。用于实现这一目标的一个通用框架是Next.js。
https://stackoverflow.com/questions/65163033
复制相似问题