RequireJS和
require是非常不同的东西-稍后再介绍。
如果您想在没有诸如Browserify或Webpack之类的工具的情况下使用React,那么您不一定需要模块加载器。React和ReactDOM的托管版本将公开您可以立即使用的全局变量。
<script src="https://fb.me/react-0.14.7.js"></script><script src="https://fb.me/react-dom-0.14.7.js"></script><script>console.log(React, ReactDOM);</script>
如果要在本地使用它们,只需下载这些文件。
系统JS所有这一切,听起来像SystemJS和JSPM可能正是您想要的。
首次用于
jspm安装软件包。
jspm install systemjs react react-dom
然后链接并配置SystemJS。
<script src='jspm_packages/system.js'></script><script> System.import('app.js');</script>
现在,
app.js您可以编写CommonJS样式代码。
var React = require('react');var ReactDOM = require('react-dom');
SystemJS将处理其余脚本的加载。如果您想进行生产构建,则就像运行一样简单
jspm bundle app。普通JS
require在React教程和其他示例中看到的调用是针对称为CommonJS的模块格式的。
您用于
require('react')获取对React模块(
node_modules与npm一起安装)导出的值的引用。这意味着您需要预浏览器构建步骤,例如Browserify或Webpack,可以将所需的所有模块装订在一起并输出一个大脚本文件。需求JS
令人困惑的是,CommonJS和RequireJS使用具有相同名称的函数来指定依赖项。您试图
require像使用CommonJS模块一样使用RequireJS
函数。
如果要改为使用RequireJS导入React,则需要执行以下 *** 作:
<script src="js/require.js"></script><script> require.config({ 'baseUrl' : 'scripts/', }); require(["react-0.14.7", "react-dom-0.14.7"], function(React, ReactDOM) { console.log(React, ReactDOM); });</script>
当您的代码执行时,RequireJS将关闭并为您指定的模块添加脚本标签。然后,一旦这些脚本加载完毕,它将把它们导出的值传递给回调函数供您使用。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)