【问题标题】:Task "default" is not in your gulpfile任务“默认”不在您的 gulpfile 中
【发布时间】:2017-05-10 20:15:42
【问题描述】:

我在控制台中运行 gulp 时收到此错误:

任务“默认”不在您的 gulpfile 中

我的 gulpfile 看起来不错:

var gulp = require('gulp'),
    LiveServer = require('gulp-live-server'),
    browserSync = require('browser-sync');

gulp.task('live-server', function () {
    var server = new LiveServer('server/main.js');
    server.start();
});

gulp.task('serve', ['live-server'], function () {
    browserSync.init(null, {
        proxy: "http://localhost:3000",
        port: 9001
    });
});

【问题讨论】:

    标签: javascript node.js npm gulp


    【解决方案1】:

    请将此包含在您的 gulp 文件中。

    gulp.task('default', ['serve']);
    

    希望这可能会有所帮助。

    【讨论】:

      【解决方案2】:

      当您在控制台中运行gulp 时,它会查找要运行的默认任务。您只将 live-serverserve 定义为任务。

      要解决定义一个默认任务,你可以像这样添加你真正想要运行的任务作为依赖:

      gulp.task( 'default', [ 'serve' ] )
      

      现在,如果您运行gulp,它将运行default 任务,而后者又运行serve 任务。或者,您也可以运行 gulp serve,它也可以正常工作。

      【讨论】:

      • 如果您的配置文件中有很多任务,则非常有用的插件是gulp-help,例如,当您键入普通的“gulp”时,它将作为您的助手,列出所有可用的命令。跨度>
      【解决方案3】:

      创建一个默认任务并添加您希望默认运行的任务:

      gulp.task("default", function () {
        gulp.start("serve");
      });
      

      【讨论】:

        【解决方案4】:

        我遇到了类似的问题,这是我的 gulp 文件

        我没有使用“默认”任务,而是直接调用“服务”任务。

        在 cmd -> gulp serve

        通过直接调用服务,它会为我调用浏览器同步任务。

        希望这对某人有帮助:)

        【讨论】:

          【解决方案5】:

          这是我以前的……

          'use strict';
          
          var gulp = require('gulp');
          var concat = require('gulp-concat');
          var cssmin = require('gulp-cssmin');
          var uglify = require('gulp-uglify');
          var merge = require('merge-stream');
          var bundleConfig = require('./bundleconfig.json');
          
          const REGEX = {
              css: /\.css$/,
              js: /\.js$/
          };
          
          gulp.task('min:js', async function () {
              merge(getBundles(REGEX.js).map(bundle => {
                  return gulp.src(bundle.inputFiles, { base: '.' })
                      .pipe(concat(bundle.outputFileName))
                      .pipe(uglify())
                      .pipe(gulp.dest('.'));
              }))
          });
          
          gulp.task('min:css', async function () {
              merge(getBundles(REGEX.css).map(bundle => {
                  return gulp.src(bundle.inputFiles, { base: '.' })
                      .pipe(concat(bundle.outputFileName))
                      .pipe(cssmin())
                      .pipe(gulp.dest('.'));
              }))
          });
          
          const getBundles = (regexPattern) => {
              return bundleConfig.filter(bundle => {
                  return regexPattern.test(bundle.outputFileName);
              });
          };
          
          gulp.task('minify', gulp.series(['min:js', 'min:css']));
          

          然后,实际上只需将最后一行更改为 'default' smh

          'use strict';
          
          var gulp = require('gulp');
          var concat = require('gulp-concat');
          var cssmin = require('gulp-cssmin');
          var uglify = require('gulp-uglify');
          var merge = require('merge-stream');
          var bundleConfig = require('./bundleconfig.json');
          
          const REGEX = {
              css: /\.css$/,
              js: /\.js$/
          };
          
          gulp.task('min:js', async function () {
              merge(getBundles(REGEX.js).map(bundle => {
                  return gulp.src(bundle.inputFiles, { base: '.' })
                      .pipe(concat(bundle.outputFileName))
                      .pipe(uglify())
                      .pipe(gulp.dest('.'));
              }))
          });
          
          gulp.task('min:css', async function () {
              merge(getBundles(REGEX.css).map(bundle => {
                  return gulp.src(bundle.inputFiles, { base: '.' })
                      .pipe(concat(bundle.outputFileName))
                      .pipe(cssmin())
                      .pipe(gulp.dest('.'));
              }))
          });
          
          const getBundles = (regexPattern) => {
              return bundleConfig.filter(bundle => {
                  return regexPattern.test(bundle.outputFileName);
              });
          };
          
          gulp.task('default', gulp.series(['min:js', 'min:css']));
          

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2016-09-29
            • 2019-04-13
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多