0

语境:

我正在尝试制作一个 gulp 插件,该插件使用 phantomJS 和可能的 Cheerio 来抓取网站,获取源(例如图像和字体文件)并将它们放入文件夹中。该插件基于Stylify-Me

我已经浏览了 gulpjs.com 上的“文档”,但我仍然不明白如何制作基本的 gulp 选项和 console.log 它们。

这是插件的外观:

   .pipe(plugin({
         url: 'http://stylifyme.com/',
         sitemap: true,
         content: all, 
         out: md,
         output: './dist/'
   }))

我现在要问的是如何选择一个选项(例如 url:'google.com')和 console.log 网站 url。

我正在使用 yeoman 生成器来创建插件 ,这是我为插件提供的代码:

var gutil = require('gulp-util');
var through = require('through2');
var cheerio = require('cheerio'),
var phantom = require('phantom');

var plugin = require('./lib');

module.exports = function (opts) {
    opts = opts || {};

    return through.obj(function (file, enc, cb) {
        if (file.isNull()) {
            cb(null, file);
            return;
        }

        if (file.isStream()) {
            cb(new gutil.PluginError('gulp-stylify', 'Streaming not supported'));
            return;
        }

        try {
            file.contents = new Buffer(someModule(file.contents.toString(), opts));
            this.push(file);
        } catch (err) {
            this.emit('error', new gutil.PluginError('gulp-stylify', err));
        }

        cb();
    });
};
4

1 回答 1

0

注意这一点opts = opts || {};。此变量包含您调用插件时传递的选项。在该声明之后,您可以访问您的选项:

console.log(opts.url);
console.log(opts.sitemap);
...
于 2016-06-06T04:23:02.590 回答