我在Safari浏览器中遇到了SyntaxError: Unexpected token ")"
的错误,而且这段代码在其他浏览器中都能正常工作。
我使用gulp
编译文件的方式如下:
browserify(componentPath + "app.jsx")
.transform(reactify)
.transform(babelify)
.bundle()
.pipe(source('app.js'))
.pipe(gulp.dest(buildPath));
语法错误正在突出显示以下内容:
return React.createElement(If, {
condition: !_.isEmpty(title)
}, React.createElement("div", {
className: "row wrapper border-bottom white-bg page-heading"
}, React.createElement("div", {
className: "col-lg-9"
}, React.createElement("h2", null, title || 'Untitled'), React.createElement("ol", {
className: "breadcrumb"
}, React.createElement("li", null, React.createElement("a", {
onClick: () => self.history.pushState(null, home)
}, "Home")), links.map(function(link, index) {
var url = link.url;
return React.createElement("li", {
onClick: () => self.history.pushState(null, url),
key: url,
className: "ptr-click"
}, index == links.length - 1 ? React.createElement("strong", null, link.title || 'Untitled') : link.title);
})))));
我将整个部分注释掉,只是为了看看是否是这个特定的代码块,但错误却指向另一个完全相同的
React.createElement
代码块。
() => {}
。我认为Safari目前无法执行箭头函数。http://caniuse.com/#search=arrow - enjoylife