在没有Node.js的情况下使用React

时间:2019-07-09 08:19:22

标签: javascript reactjs

我有一个关于如何在没有Nodejs的情况下使用React的问题。 我知道有一个CDN链接,我们可以像正常脚本一样使用React。但是我想要的是能够在没有Node.js的情况下像模块(es6)一样导入React

从React源代码中,我看到这样的import语句:

import ReactVersion from 'shared/ReactVersion';

但是我认为它仅适用于Node.js,对吗?因为据我所知,es6 import语句需要添加“ .js”

有可能吗?你有什么主意吗?

感谢您的帮助

3 个答案:

答案 0 :(得分:0)

您不需要将nodejs转换为es6语法。 如果使用es6语法,则由于兼容性原因,您需要转换为es5。 为此,您需要一些打包工具,例如Web Pack或包裹。 他们可以将您的代码转换为es5。

答案 1 :(得分:0)

有可能,但由于性能不佳而被弃用 检查这个 https://cdnjs.com/libraries/babel-standalone

babel-standalone或babel-browser使您可以使用es6语法,然后您可以在浏览器中直接使用babel而不进行编译,编译是即时进行的。它已过时,不建议使用,因此,如果它是一个真正的项目,请使用带有node.js的webpack进行开发并避免这种方式

答案 2 :(得分:0)

当你使用 nodejs 你会看到

import React from 'react';
import ReactDOM from 'react-dom';

众所周知,这些 ReactReactDom 是具有 export function React(...) {...} 的类

您可以尝试下载这两个脚本并保存到您的本地文件夹中,然后访问它。您唯一需要告诉主脚本的是模块 <script src="main.js" type="module"></script>

在您的 main.js 中,您可以像这样放置那些 import

// be aware how to access these scripts in different layers of folders
import '../react.development.js'
import '../react-dom.development.js'

var name = 'Josh Perez'

var element_rct = 'hello world'

ReactDOM.render(
  element_rct,
  document.getElementById('root')
)

这对你有用。注意:本例中没有 JSX,只有纯 React