我看不懂图书馆https://github.com/jquense/react-widgets有一个路径,例如:lib/NumberInput.js
这个文件的代码是:
'use strict';
var babelHelpers = require('./util/babelHelpers.js');
var React = require('react'),
CustomPropTypes = require('./util/propTypes'),
localizers = require('./util/configuration').locale;
var format = function format(props) {
return props.format || localizers.number.formats['default'];
};
//.... code code code .....
我代码:<!DOCTYPE html>
<html>
<head>
<title>Hello React</title>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/0.13.3/react.js"></script>
<script src="react-widgets/lib/NumberInput.js"></script>
</head>
<body></body>
</html>
在控制台写错误:
我连接了图书馆。http://requirejs.org/Uncaught ReferenceError: require is not defined
<!DOCTYPE html>
<html>
<head>
<title>Hello React</title>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/0.13.3/react.js"></script>
<script src="require.js"></script>
<script src="react-widgets/lib/NumberInput.js"></script>
</head>
<body></body>
</html>
又出错了:
未捕获错误:模块名"util/babelHelpers.js"尚未加载然而,就上下文而言:_。使用要求([])
我做错了什么?
React widgets是通过NPM分发的;你可以使用它们,因为node.js内置的require
模块加载器。为了让浏览器可以使用节点模块,你需要使用Browserify创建一个bundle(包含React本身、小部件、可能还有其他模块和你的代码),并将其包含到web页面中。