为什么gulp-uglify打破后端?

时间:2015-08-02 04:58:24

标签: javascript uglifyjs backendless

我实际上不知道,我应该向您展示哪部分代码。

我有一个webApp(reactJs,flux,react-router,nodejs + express server); 它工作正常,直到我uglify main.js文件。

这里"搜索"通过无后端数据库(http://backendless.com/documentation/data/js/data_search_and_query.htm

 var dataQuery = {
        condition: conditions,
        options: {
          pageSize: 18,
          relationsDepth: 1
        }
      }

如果我不在我的Build中使用gulp uglify,它可以正常工作。 如果我使用uglify,我收到此错误: 获取https://api.backendless.com/v1/data/t?pageSize=18&relationsDepth=1 404(未找到)

为什么会这样?

完整版:

GET https://api.backendless.com/v1/data/t?pageSize=18&relationsDepth=1 404 (Not Found)
e._ajax_for_browser.o @ main.js:15
e._ajax_for_browser.a.ignoreCache @ main.js:15
e._ajax_for_browser @ main.js:15
C.find @ main.js:15
r @ main.js:15
(anonymous function) @ main.js:15
r.$Dispatcher_invokeCallback @ main.js:1
r.dispatch @ main.js:1
a.handleViewAction @ main.js:15
o.search @ main.js:12
r.createClass._getInitItems @ main.js:13
r.createClass._getAllEstateItems @ main.js:13
l.addons.update.$merge.searchByParams @ main.js:15
r.createClass.componentDidMount @ main.js:13
o.notifyAll @ main.js:3
m.close @ main.js:9
a.closeAll @ main.js:12
a.perform @ main.js:12
h @ main.js:9
a.perform @ main.js:12
d.batchedUpdates @ main.js:8
o @ main.js:11
$._renderNewRootComponent @ main.js:9
r.measure.i @ main.js:9
$.render @ main.js:9
r.measure.i @ main.js:9
(anonymous function) @ main.js:15
u.createClass.statics.run.L @ main.js:2
(anonymous function) @ main.js:2
(anonymous function) @ main.js:2
(anonymous function) @ main.js:2
r.to @ main.js:2
(anonymous function) @ main.js:2
r.from @ main.js:2
u.createClass.statics.dispatch @ main.js:2
u.createClass.statics.refresh @ main.js:2
u.createClass.statics.run @ main.js:2
r @ main.js:3
250.../jsLibs/1. backendless.min @ main.js:15
a @ main.js:1
e @ main.js:1
(anonymous function) @ main.js:1

UPD#1 Gulpfile.js:

var gulp = require('gulp');
var browserify = require('gulp-browserify');
var concat = require('gulp-concat');
var uglify = require('gulp-uglify');
var uglifycss = require('gulp-uglifycss');




gulp.task('browserify', function() {
    gulp.src('src/js/main.js')
      .pipe(browserify({transform: 'reactify'}))
      .pipe(concat('main.js'))
      .pipe(gulp.dest('dist/js'));
});

gulp.task('uglifyjs', function() {
  gulp.src('dist/js/main.js')
      .pipe(uglify())
      .pipe(gulp.dest('dist/js')) 
});
gulp.task('copy', function() {
    gulp.src('src/index.html')
      .pipe(gulp.dest('dist'));
    gulp.src('src/assets/**/*.*')
      .pipe(gulp.dest('dist/assets'));
});

gulp.task('default',['browserify', 'copy']);

gulp.task('watch', function() {
    gulp.watch('src/**/*.*', ['default']);
});

gulp.task('js', function () {
  gulp.src('src/jsLibs/*.js')
    .pipe(concat('scripts.js'))
    .pipe(uglify())
    .pipe(gulp.dest('dist/js'))
})

gulp.task('css', function () {
  gulp.src('src/css/*.css')
    .pipe(concat('styles.css'))
    .pipe(uglifycss())
    .pipe(gulp.dest('dist/css'))
})

3 个答案:

答案 0 :(得分:1)

你能不能给我.js文件中的代码,你可以从中查询数据对象。我想你在另一堂课里搜索。

答案 1 :(得分:1)

GET https://api.backendless.com/v1/data/t?pageSize=18&relationsDepth=1 404 (Not Found)

此请求转到名为t的表。我很确定你的表名不是t

答案 2 :(得分:1)

正如我们在support forum上所回答的那样:

  

我们的JS SDK从构造函数的名称形成url,   因此,如果您重命名它 - 请求将查询另一个表,并为   现在无法从代码中更改此逻辑。

     

所以你正在寻找正确的方向:最合适的解决方案   在这种情况下,将从中排除这些构造函数的名称   uglify的混淆列表。

此致 标记