使用 reactify 使用 ES6 导入语法转换 jsx
Converting jsx with ES6 import syntax using reactify
我正在使用 reactify(一种 browserify 转换 https://github.com/andreypopp/reactify)将 JSX 转换为常规 JS。
我设置了一个 gulp 任务:
gulp.task('reactifyes6', function () {
var bundler = watchify(browserify(watchify.args));
return bundler.add('./Scripts/Widget/ReactComponents/Dashboard.jsx')
.transform('reactify',{harmony:true, es6module:true})
.bundle()
.pipe(source('Dashboard.js'))
.pipe(gulp.dest('./Scripts/Widget/Build/'));
});
为了让这个工作正常,我有两个文件:Dashboard.jsx
和 someJS.js
。
Dashboad.jsx
import myFunc from './someJS.js';
myFunc();
someJS.js
export default function () { console.log('test'); };
当我 运行 gulp 任务 'reactifyes6'
时,我得到 ReactifyError "Illegal import declaration while parsing file: [path to my file]"
我做错了什么以及如何编译 ES6 导入/导出语法?
尝试用 babelify 代替 reactify
我正在使用 reactify(一种 browserify 转换 https://github.com/andreypopp/reactify)将 JSX 转换为常规 JS。 我设置了一个 gulp 任务:
gulp.task('reactifyes6', function () {
var bundler = watchify(browserify(watchify.args));
return bundler.add('./Scripts/Widget/ReactComponents/Dashboard.jsx')
.transform('reactify',{harmony:true, es6module:true})
.bundle()
.pipe(source('Dashboard.js'))
.pipe(gulp.dest('./Scripts/Widget/Build/'));
});
为了让这个工作正常,我有两个文件:Dashboard.jsx
和 someJS.js
。
Dashboad.jsx
import myFunc from './someJS.js';
myFunc();
someJS.js
export default function () { console.log('test'); };
当我 运行 gulp 任务 'reactifyes6'
时,我得到 ReactifyError "Illegal import declaration while parsing file: [path to my file]"
我做错了什么以及如何编译 ES6 导入/导出语法?
尝试用 babelify 代替 reactify