fe build
整个程序是依赖于 webpack , gulp 做模块管理之外的事
/data 以及 /src 两个文件夹与本项目无关,只是例子
如何安装
npm install febd --save-dev
如何使用
var Febd = require('febd');
var febd = new Febd();
febd 提供的接口
febd.mock(opts);
febd.devSatart(callback);
febd.build(gulpCallback, callback);
febd.connect();
makerWebpackConfig 提供的接口 (有一些我就略过了)
.set(webpackConfig) - 直接传入一个 webpackConfig.js - 如果你很熟悉 webpack 的配置项了,就直接用这个吧
.setAlias(aliasObject) - 设置 alias
.addLoaders(loaders) {Array|Object} - ([{loader}, {loader}]) | {loader}
.clearLoaders()
.addPlugins(plugins) {Array}
... 还有一些就看源码吧,注释都加上了
有两个必须的文件
- config.js - 至于名字你随意,这是一个很重要的文件,他作为整个程序的基础配置项
- gulpfile.js - 这个是作为启动本地服务、模拟线上环境、打包用的
上面2个文件你可以在 node_modules/febd 中拷贝样例
config.js
直接看 node_modules/febd 中的例子哇,主要是做了一些基础配置项
gulpfile.js
var path = require('path');
var srcDir = path.resolve(process.cwd(), 'src');
var setMaker = function (maker, webpack) {
maker.setAlias({
zepto: srcDir + '/static/js/common/zepto',
ui: './ui/'
});
maker.addPlugins([
new webpack.ProvidePlugin({
$: 'zepto'
})
]);
};
gulp.task('dev-webpack', function (callback) {
febd.devStart(function (maker, webpack) {
setMaker(maker, webpack);
});
});
gulp.task('release-webpack', function (gulpCallback) {
febd.build(gulpCallback, function (maker, webpack) {
setMaker(maker, webpack);
});
});
上面是栗子
ME: deo - denglingbo@126.com