Using Gulp to build requireJS project - gulp-requirejs

前端 未结 7 510
轮回少年
轮回少年 2020-12-12 20:05

I am trying to use gulp-requirejs to build a demo project. I expect result to be a single file with all js dependencies and template included. Here is my gulpfile.js

7条回答
  •  Happy的楠姐
    2020-12-12 20:22

    Try this code in your gulpfile:

    // Node modules
    var
        fs = require('fs'),
        vm = require('vm'),
        merge = require('deeply');    
    
    // Gulp and plugins
    var
        gulp = require('gulp'),    
        gulprjs= require('gulp-requirejs-bundler');
    
    // Config
    var
        requireJsRuntimeConfig = vm.runInNewContext(fs.readFileSync('app/config.js') + '; require;'),
        requireJsOptimizerConfig = merge(requireJsRuntimeConfig, {
            name: 'main',
            baseUrl: './app',
            out: 'result.js',
            paths: {
                requireLib: 'bower_modules/requirejs/require'
            },
            insertRequire: ['main'],
            // aliases from config.js - libs will be included to result.js
            include: [
                'requireLib',
                "almond",
                "underscore",
                "jquery",
                "backbone",
                "text",
                "book"
            ]
        });
    
    gulp.task('requirejsBuild', ['component-scripts', 'external-scripts'], function (cb) {
        return gulprjs(requireJsOptimizerConfig)            
            .pipe(gulp.dest('app/dist'));
    });
    

提交回复
热议问题