A wrapper for react-native-css, a css to react-native StyleSheet Syntax by @sabeurthabti 👏
This plugin requires Grunt ~0.4.5
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, you may install this plugin with this command:
npm install grunt-react-native-css --save-dev
Once the plugin has been installed, it may be enabled inside your Gruntfile with this line of JavaScript:
grunt.loadNpmTasks('grunt-react-native-css');
In your project's Gruntfile, add a section named react_native_css
to the data object passed into grunt.initConfig()
.
grunt.initConfig({
react_native_css: {
options: {
// Task-specific options go here.
},
your_target: {
// Target-specific file lists and/or options go here.
},
},
});
Type: Boolean
Default value: false
Passes the --pretty
option to react-native-css which outputs a multiline js StyleSheet file.
Type: Boolean
Default value: false
Passes the --literal
option to react-native-css which outputs a simple js object instead of a StyleSheet.create() object.
grunt.initConfig({
react_native_css: {
default_options: {
options: {},
files: {
'dest/style.js': ['src/style.css', 'src/vars.css'],
},
},
},
});
This plugin does not wrap the use of the -w
flag for react-native-css because grunt has it's own file watcher under the hood. Just install :
npm install grunt-contrib-watch --save-dev
Add the task to you GruntFile
grunt.loadNpmTasks('grunt-contrib-watch');
And tell watch to fire the react_native_css
task on file changes
watch: {
react_native_css: {
files: ['**/*.css', '**/*.scss'],
tasks: ['react_native_css'],
options: {
interrupt: true,
},
},
}
In lieu of a formal styleguide, take care to maintain the existing coding style. Add unit tests for any new or changed functionality. Lint and test your code using Grunt.
V 1.0.0 Transfer ownership from @alexmick to @feedly
Option literal now supported as added in https://github.com/sabeurthabti/react-native-css/pull/29
Use the official react-native-css
instead of personal fork
Improve reliability of async task
Integrates with alexmick/react-native-css, waiting for PR #28 to switch to official npm module