【发布时间】:2016-08-24 03:20:51
【问题描述】:
//ERRRORS SHOWN ON THE CONSOLE
main.lib.angular.js:1 Uncaught TypeError: Cannot read property 'noop' of undefined
main.lib.js:1 Uncaught TypeError: Cannot read property 'module' of undefined
main.user.js:1 Uncaught ReferenceError: angular is not defined
(index):52 Uncaught ReferenceError: angular is not defined
我正在为我的应用程序编写 Gulp 文件。该应用程序使用 AngularJS 及其库和其他一些库。但是,当我对 JS 文件进行 uglify 并将所有库文件合并为一个并将所有用户定义的 JS 文件合并为一个时,我收到一条错误消息,提示未定义角度。我保留了 uglified-concatenated 文件的顺序,以便在编译过程中首先出现带有角度库的文件。但是,由于除了 angular.js 之前的 angular.js 之外还有更多的 angular 文件,我得到一个错误。这个问题有解决方案吗?此外,如果我不连接角度库文件并将它们导入,我仍然会收到未定义的其他注入模块的错误。这是我写的 gulpfile.js:
var gulp = require('gulp'),
uglify = require('gulp-uglify'),
plumber = require('gulp-plumber'),
rename = require('gulp-rename'),
browserSync = require('browser-sync')
reload = browserSync.reload,
concat = require('gulp-concat')
cleanCSS = require('gulp-clean-css');
var dest = './dest/'
//Angular apps
gulp.task('script-lib-ang', function() {
gulp.src('./lib/angular/*.js')
.pipe(plumber())
.pipe(uglify({
mangle: false
}))
.pipe(concat('main.lib.angular.js'))
.pipe(gulp.dest(dest))
.pipe(reload({
stream: true
}));
});
//Task for all the library javascript files
gulp.task('script-lib', ['script-lib-ang'], function() {
gulp.src(['./lib/**/*.js', '!./lib/angular/*.js'])
.pipe(plumber())
.pipe(uglify({
mangle: false
}))
.pipe(concat('main.lib.js'))
.pipe(gulp.dest(dest))
.pipe(reload({
stream: true
}));
});
//Task for all custom js files developed by the user
gulp.task('script-user', ['script-lib'], function() {
gulp.src('./app/**/*.js')
.pipe(plumber())
.pipe(uglify({
mangle: false
}))
.pipe(concat('main.user.js'))
.pipe(gulp.dest(dest))
.pipe(reload({
stream: true
}));
});
// gulp.task('css-user', function() {
// gulp.src(['./css/**/*.css', '!./css/lib/*.css'])
// .pipe(plumber())
// .pipe(cleanCSS())
// .pipe(concat('css-user.css'))
// .pipe(gulp.dest(dest))
// .pipe(reload({stream : true}));
// });
gulp.task('css-lib', function() {
gulp.src('./css/**/*.css')
.pipe(plumber())
.pipe(cleanCSS())
.pipe(concat('css-lib.css'))
.pipe(gulp.dest(dest))
.pipe(reload({
stream: true
}));
});
gulp.task('browser-sync', function() {
browserSync({
proxy: 'localhost',
ui: false
});
});
gulp.task('watch', function() {
gulp.watch('./lib/angular/*.js', ['script-lib-ang']);
gulp.watch(['./lib/**/*.js', '!./lib/angular/*.js'], ['script-lib']);
gulp.watch('./app/**/*.js', ['script-user']);
gulp.watch('./css/**/*.css', ['css-lib']);
});
gulp.task('default', ['script-lib-ang', 'script-lib', 'script-user', 'css-lib', 'browser-sync', 'watch']);
【问题讨论】:
-
您能否提及确切的错误字符串。
-
@Aman Gupta 我在帖子中添加了控制台错误
标签: javascript angularjs node.js gulp gulp-concat