node package manager
Painless code sharing. npm Orgs help your team discover, share, and reuse code. Create a free org »

grunt-requirejs-config

grunt-requirejs-config

Write your require.js config once in your Gruntfile and prepend it to files for development

NPM version
Build Status
## Getting Started If you haven't used grunt before, be sure to check out the Getting Started guide, as it explains how to create a gruntfile as well as install and use grunt plugins. Once you're familiar with that process, install this plugin with this command:

npm install grunt-requirejs-config --save-dev

Then add this line to your project's Gruntfile.js gruntfile:

grunt.loadNpmTasks('grunt-requirejs-config');

Documentation

Usage

Here is an example usage which allows you to set your require.js configuration once for your whole Gruntfile:

var requireShim = { 
  underscore: { 
    exports: '_'
  }
};
 
var requirePaths = { 
  jquery: 'libs/jquery',
  underscore: 'libs/underscore'
};
 
grunt.initConfig({
  requirejsconfig: {
    dev: {
      src: 'src/scripts/main.js',
      dest: 'dev/scripts/main.js',
      options: {
        shim: requireShim,
        paths: requirePaths
      }
    }
  }
});

This is what a sample src file would look like:

require(['appController'], function (AppController) {
  AppController();
});

The output dest file looks like:

// Config added by grunt-requirejs-config 
require.config({
  "shim": {
    "underscore": {
      "exports": "_"
    }
  },
  "paths": {
    "jquery": "libs/jquery",
    "underscore": "libs/underscore"
  }
});
 
require(['appController'], function (AppController) {
  AppController();
});

This file starts the app after the config has been set. ## Required properties ### src Type: String

This is file that require-config uses as your base file to prepend the configuration.

dest

Type: String

This is the destination of the generated config file.

Options

Any option will be used as a property passed to the require.js config. Here is a page describing all of the options.

Changelog

0.1.0 - Allow full function print in require.js config

0.0.2 - Called done() on async task

0.0.1 - Fixed registered task name

0.0.0 - Initial release