Javascript Browserify&;反应问题
无法使Browserify与ReactJS一起工作。我正在运行watchify,尽管browserify也做同样的事情:Javascript Browserify&;反应问题,javascript,reactjs,browserify,Javascript,Reactjs,Browserify,无法使Browserify与ReactJS一起工作。我正在运行watchify,尽管browserify也做同样的事情: watchify -t reactify app2.js -o ../build/app-brow.js 浏览器控制台在mywidget.js中显示此错误: 未捕获的语法错误:mywidget.js中的意外标记,您有: module.exports = MyWidget; 当您需要一个文件时,您将获得module.exports的值 所以这一行实际上是在做MyWidge
watchify -t reactify app2.js -o ../build/app-brow.js
浏览器控制台在mywidget.js
中显示此错误:
未捕获的语法错误:mywidget.js中的意外标记,您有:
module.exports = MyWidget;
当您需要一个文件时,您将获得module.exports
的值
所以这一行实际上是在做MyWidget.MyWidget,它是未定义的
var MyShow = require('./mywidget').MyWidget;
您应该在最后删除.MyWidget
var MyShow = require('./mywidget');
mywidget.js文件中还缺少
/**@jsx React.DOM*/
,这导致了语法错误
旁注:删除JSXTransformer,您不需要它,因为您使用的是reactify。我使用gulp和browserfy制作了ReactJS的基本组件。
本博客可能会帮助您制作React组件我认为它可能在
mywidget.js
中丢失了/**jsx React.DOM*/
,但没有工作。还尝试添加var React=require('React')代码>到.js文件,还是不行!如果您想使用浏览器内转换器,则需要指定type=“text/jsx”
,尽管听起来这不是您的意图。(在这种情况下,您不需要jsxtTransformer.js。)再看一看我的React+browserify+gulp模板:顺便说一句,RequireJS/AMD有些不同,您使用的是browserify/CommonJS。我将RequireJS包含在index.html
这个标记中:
。你是说Browserify将RequireJS转换为CommonJS模块?开始工作了!感谢您删除JSXTTransformer脚本标记,祝您好运!
module.exports = MyWidget;
var MyShow = require('./mywidget').MyWidget;
var MyShow = require('./mywidget');