UNPKG

grunt-requirejs-config

Version:

grunt task to prepend a require.js config to a file

96 lines (78 loc) 2.56 kB
# grunt-requirejs-config > Write your [require.js config](http://requirejs.org/docs/api.html#config) once in your Gruntfile and prepend it to files for development [![NPM version](https://badge.fury.io/js/grunt-requirejs-config.png)](http://badge.fury.io/js/grunt-requirejs-config) [![Build Status](https://travis-ci.org/ChrisWren/grunt-requirejs-config.png)](https://travis-ci.org/ChrisWren/grunt-requirejs-config) ## Getting Started If you haven't used grunt before, be sure to check out the [Getting Started](http://gruntjs.com/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: ```shell npm install grunt-requirejs-config --save-dev ``` Then add this line to your project's `Gruntfile.js` gruntfile: ```javascript 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: ```js 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: ```javascript require(['appController'], function (AppController) { AppController(); }); ``` The output `dest` file looks like: ```javascript // 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](https://github.com/jrburke/r.js/blob/master/build/example.build.js) 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