Reactivity、Browserify和Gulp:TypeError:Object#<转换>没有方法
Reactify, Browserify and Gulp: TypeError: Object #<Transform> has no method 'transform'
这是通过命令行执行gulp scripts
:时的错误
类型错误:对象#<Transform>没有方法"Transform"
这是gulpfile.js
:
var gulp = require ('gulp')
, browserify = require ('gulp-browserify')
, source = require ('vinyl-source-stream')
, reactify = require ('reactify');
gulp.task('scripts', function () {
browserify('./assets/js/main.js')
.transform(reactify)
.bundle()
.pipe(source('main.js'))
.pipe(gulp.dest('./static/js'));
});
gulp.task('default', ['scripts']);
我真的不知道怎么解决这个问题。我在网上搜索了一下,但没有发现任何与我的具体错误接近的错误。
您的任务有一些问题。
首先,您必须使用gulp.src
来获取main.js文件。其次,transform
是gullowbrowserfy的一个选项,而不是你想用管道传输流的东西,bundle
也是如此。
gulp.task('scripts', function () {
return gulp.src('./assets/js/main.js')
.pipe(browserify({
transform: [reactify]
}))
.pipe(gulp.dest('./static/js'));
});
如果你想要更像你第一次尝试的东西,你不需要gulpbrowserify,但browserify单独使用,这里有一篇关于如何将ReactJs与browserify和gulp一起使用的非常好的文章。
您将vinyl-source-stream
与browserify
一起使用,而不是与gulp-browserify
一起使用。你把两者混在一起了。
var buffer = require('vinyl-buffer');
,source = require('vinyl-source-stream')
,browserify = require('browserify') //not gulp-browerify
,babelify = require('babelify')
,uglify = require('gulp-uglify')
;
gulp.task('scripts', function(){
var bundler = browserify('./assets/js/main.js');
return bundler
.transform(babelify, {presets: ["es2015", "stage-1", "react"]})
.bundle({standalone: 'noscope'})
.pipe(source('main.js'))
.pipe(buffer())
.pipe(uglify())
.pipe(gulp.dest('./static/js'));
});
来自https://github.com/gulpjs/gulp/issues/369
编辑:使用babelify而不是reatify(已弃用)
相关文章:
- d3.tree=>转换似乎不起作用
- 转换<a>使用jQuery将文本字符串转换为dom元素
- 如何转换列表<对象>转换为JsonResult
- 优化J$plus组合3<脚本>转换为1
- 如何将逗号分隔的列表转换为<ul>列表
- 如何将Array转换为<ul><李>以字母为标题的字母列表
- 如何添加html<br>标记转换为javascript
- JavaScript将缩进文本转换为HTML列表重复顶层<李>'s为<ul>'s
- Picturefill.js:需要帮助转换<图片>到<img>srcset/sites方法
- Knockout.js和表:插入<th>将内容转换为匹配<td>
- 插入<脚本>使用jQuery将其转换为iframe
- 转换UL->li inot为同位素过滤菜单选择的列表
- jwplayer转换<对象>到javascript
- AngularJS变量转换为html<对象>属性
- Kendo UI-将Text()括起来的文本转换为<span>编码HTML
- CSS-转换高度在<a>标签
- 是否存在通用的、显式的基元->JavaScript中的对象强制转换
- Javascript:将Int数字转换为日期格式:(8->08:00)
- Reactivity、Browserify和Gulp:TypeError:Object#<转换>没有方法
- 防止降价处理器转换“>"至“>"在<脚本>标签