小编Sve*_*ung的帖子

如何让gulp-jshint忽略文件夹

我在继承的解决方案中有以下文件夹结构

.\gulp.config.js
.\gulpfile.js
.\.jscsrc
.\.jshintrc
.\default.js
.\Resources\js\main.js
.\Resources\js\modules\   various user created js files
.\Resources\js\vendor\    various js files i.e jQuery
Run Code Online (Sandbox Code Playgroud)

我已经安装了gulp-jscs和gulp-jshint.

.jscsrc我来自https://github.com/johnpapa/pluralsight-gulp/blob/master/.jscsrc.

我在gulpfile.js中有以下内容:

'use strict'

var gulp = require('gulp');
var jshint = require('gulp-jshint');
var jscs = require('gulp-jscs');

gulp.task('verifyJS',function(){
    gulp.src([
        './Resources/**/*.js',
        './*.js'
    ])
    .pipe(jscs())
    .pipe(jshint())
    .pipe(jshint.reporter('jshint-stylish', { verbose: true }));
});
Run Code Online (Sandbox Code Playgroud)

我正在尝试更新.jscsrc中的excludeFiles以排除以下内容:

.\default.js 
.\resources\js\vendor
Run Code Online (Sandbox Code Playgroud)

这是我尝试过的:

 "excludeFiles": [
     "node_modules/**",
     "bower_components/**",
     "Resources/js/vendor/**", // vendor supplied files. ie jQuery
     "./Resources/js/vendor/**", 
     "default.js", 
     "/default.js", 
     "./default.js", 
 ],
Run Code Online (Sandbox Code Playgroud)

我已经包含了我尝试过的所有组合.

但是当我运行gulp verifyJS它时仍然包括我想要排除的文件.

如何正确设置excludeFiles 以排除项目根目录下的文件以及包含所有后续文件和文件夹的子文件夹?

jshint gulp jscs gulp-jscs gulp-jshint

3
推荐指数
1
解决办法
2273
查看次数

在 gulp 中使用 concat() 保持文件夹结构

文件夹结构:

project
|
+-coffee
| |
| +-main.coffee
| |
| +-testDir
| | |
| | +-models.coffee
| | |
| | +-views.coffee
| |
| +-anotherDir
| | |
| | +-routes.coffee
| | |
| | +-views.coffee
| | |
| | +-modules.coffee
| |
| +- etc...
| 
+-www
Run Code Online (Sandbox Code Playgroud)

这个想法是在将文件coffee/写入目录时将文件夹结构与目录保持一致www/。中可以有任意数量的子文件夹coffee/.coffee每个文件夹中的所有文件都应该连接到一个modules.js文件中:

www
|
+-modules.js
|
+-testDir
| |
| +-modules.js
|
+-anotherDir
| |
| +-modules.js
| …
Run Code Online (Sandbox Code Playgroud)

gulp gulp-concat

3
推荐指数
1
解决办法
1201
查看次数

Modify path of gulp.dest

My goal is to find the binaries in here, and elevate them to the first subdir in exe dir.

My simplified (in reality it has more junk, more subdirs) folder structure is this:

src
??? exe
?   ??? nix
?       ??? binary.out
?       ??? blah
?   ??? mac
?       ??? binary.out
?       ??? blah
?   ??? win
?       ??? src
?           ??? trigger
?                ??? trigger
?                    ??? trigger
?                        ??? binary.exe
?                    ??? Debug
Run Code Online (Sandbox Code Playgroud)

My goal is to copy …

gulp

2
推荐指数
1
解决办法
1245
查看次数

npm - 管理供应商以进行分发

我最近在玩 Gulp.js 和 npm,很棒。但是,我并没有真正理解将 npm 用作将被推送到 dist 的包的包管理器的想法。

让我们举一个例子。

我想下载最新的 jquery、bootstrap 和 font-awesome,以便我可以将它们包含到我的项目中。我可以简单地从他们的网站下载它们并获取要包含的文件。另一种选择似乎是数据包管理器,即 NPM。

但是,由于 gulp 等其他包,我的 node_modules 目录很大,并且根本没有嵌套。将选定的包移动到另一个目录的最简单方法是什么 - 例如src/vendors/

我试图通过 gulp 任务简单地从node_modules指定的目录复制指定的文件并将它们移动到指定的目录来实现这一点,但从长远来看,它与手动复制文件几乎相同,因为我不仅要指定输入目录,还要指定输出每个包的目录。

我目前的解决方案:

gulp.task('vendors', function() {

    var jquery = gulp.src(vendors.src.jquery)
       .pipe(gulp.dest(vendors.dist.jquery));

    var bootstrap = gulp.src(vendors.src.bootstrap)
       .pipe(gulp.dest(vendors.dist.bootstrap));

    return merge(jquery, bootstrap);
});

vendors = {
    src: {
        jquery: 'node_modules/jquery/dist/**/*',
        bootstrap: 'node_modules/bootstrap/dist/**/*'
    },
    dist: {
        jquery: 'src/resources/vendors/jquery',
        bootstrap: 'src/resources/vendors/bootstrap'
    }
}
Run Code Online (Sandbox Code Playgroud)

有没有更快和/或更好的选择?

package vendors npm gulp

2
推荐指数
1
解决办法
2294
查看次数

使用gulp排除名为node_module的任何目录中的所有文件

我有一个嵌套node_module目录的目录结构.

root
    node_modules
    file.txt
    test
        node_modules
        file.txt
Run Code Online (Sandbox Code Playgroud)

我想生成:

root
    file.txt
    test
        file.txt
Run Code Online (Sandbox Code Playgroud)

glob模式正在逃避我.

我正在使用

gulp.src(['**/*', '!(**/*/node_modules)'])
Run Code Online (Sandbox Code Playgroud)

gulp

1
推荐指数
1
解决办法
424
查看次数

使用gulp和google closure将js文件编译成单个文件而不是单个文件

我正在使用google-closure-compilergulp来缩小我的angularjs文件.

我在app/js文件夹中有3个js文件.他们是controller.js, app.js, services.js.

这是我的gulpfile代码:

var closureCompiler = require('google-closure-compiler').gulp();

gulp.task('js-closure', function () {
    return gulp.src('app/js/*.js', {base: './'})
        .pipe(closureCompiler({
            compilation_level: 'SIMPLE_OPTIMIZATIONS',
            warning_level: 'QUIET',
            language_in: 'ECMASCRIPT6_STRICT',
            language_out: 'ECMASCRIPT5_STRICT',
            output_wrapper: '(function(){\n%output%\n}).call(this)',
            js_output_file: 'output.min.js'
        }))
        .pipe(gulp.dest('./dist/js'));
});
Run Code Online (Sandbox Code Playgroud)

代码的作用是将3个js文件编译成单个文件 output.min.js

我想要的是将3个js文件编译成3个独立的js文件 controller.min.js, app.min.js, services.min.js

javascript google-closure google-closure-compiler gulp

1
推荐指数
1
解决办法
969
查看次数

读取一堆JSON文件,转换它们并保存它们

我正试图实现这个目标Gulp.

  1. 读取.json给定目录中的每个文件,包括子目录.
  2. 以某种方式转换它们,例如添加新的根级别等.
  3. 将它们保存到保持原始结构的新目录中.

我迷失的地方是如何管道读/写JSON src.

我现在有以下骨架.

gulp.task("migratefiles", function () {
  return gulp.src("files/**/*.json")
      .pipe(/* WHAT HERE? */)
      .pipe(gulp.dest("processed"));
});
Run Code Online (Sandbox Code Playgroud)

javascript json gulp

0
推荐指数
1
解决办法
917
查看次数

Gulp + browserify + babelify:JSX代码的"意外令牌"

我试图传达的代码是这样的:

var React = require('react');
var ReactDOM = require('react-dom');

var listOfItems = <ul>
                    <li className="item-1">Item 1</li>
                    <li className="item-2">Item 2</li>
                    <li className="item-3">Item 3</li>
                  </ul>;

ReactDOM.render(listOfItems, document.getElementById('react-application'));
Run Code Online (Sandbox Code Playgroud)

gulpfile.js看起来像这样:

var gulp = require('gulp');
var browserify = require('browserify');
var babelify = require('babelify');
var source = require('vinyl-source-stream');

gulp.task('default', function () {
  return browserify('./source/app.js')
    .transform(babelify)
    .bundle()
    .pipe(source('snapterest.js'))
    .pipe(gulp.dest('./build/'));
});
Run Code Online (Sandbox Code Playgroud)

但是,如果我尝试启动gulp,它会给我这个错误:

[18:00:34] Using gulpfile ~/Documents/Esercitazioni/react/reactjs-essentials/snapterest/gulpfile.js
[18:00:34] Starting 'default'...
events.js:141
      throw er; // Unhandled 'error' event
      ^

SyntaxError: /Users/macbookpro/Documents/Esercitazioni/react/reactjs-essentials/snapterest/source/app.js: Unexpected token (4:18)
  2 | var ReactDOM …
Run Code Online (Sandbox Code Playgroud)

jsx reactjs gulp

0
推荐指数
1
解决办法
533
查看次数

res.sendFile(path.join(__dirname, '../public', 'mapv02.html'));

mapv02.html 发送正确,但是找不到mapv01.html 中的'.js'!

//路由/restapi.js

res.sendFile(path.join(__dirname, '../public', 'mapv02.html'));
Run Code Online (Sandbox Code Playgroud)

//public/mapv02.html

<script type="text/javascript" src="js/jquery-2.1.4.js"></script>
Run Code Online (Sandbox Code Playgroud)

javascript node.js express

-1
推荐指数
1
解决办法
7114
查看次数