add scss format

This commit is contained in:
Chris Olsen 2015-01-17 14:30:40 -07:00
parent 2d637ceed2
commit 0734dace64
8 changed files with 19 additions and 1 deletions

View File

@ -74,6 +74,7 @@ ReactWebpackGenerator.prototype.askForStylesLanguage = function () {
choices: [ choices: [
{name: 'CSS', value: 'css'}, {name: 'CSS', value: 'css'},
{name: 'SASS', value: 'sass'}, {name: 'SASS', value: 'sass'},
{name: 'SCSS', value: 'scss'},
{name: 'LESS', value: 'less'}, {name: 'LESS', value: 'less'},
{name: 'Stylus', value: 'stylus'} {name: 'Stylus', value: 'stylus'}
], ],

View File

@ -43,6 +43,9 @@ var Generator = module.exports = function Generator() {
case 'sass': case 'sass':
this.stylesSuffix = '.sass'; this.stylesSuffix = '.sass';
break; break;
case 'scss':
this.stylesSuffix = '.scss';
break;
case 'less': case 'less':
this.stylesSuffix = '.less'; this.stylesSuffix = '.less';
break; break;

View File

@ -37,7 +37,7 @@
"grunt-contrib-copy": "~0.5.0",<% if (es6) { %> "grunt-contrib-copy": "~0.5.0",<% if (es6) { %>
"6to5": "^2.7.1", "6to5": "^2.7.1",
"6to5-loader": "^1.0.0",<% } %> "6to5-loader": "^1.0.0",<% } %>
"grunt-contrib-clean": "~0.6.0",<% if (stylesLanguage === 'sass') { %> "grunt-contrib-clean": "~0.6.0",<% if (stylesLanguage.match(/s[ac]ss/)) { %>
"sass-loader": "^0.3.1",<% } %><% if (stylesLanguage === 'less') { %> "sass-loader": "^0.3.1",<% } %><% if (stylesLanguage === 'less') { %>
"less-loader": "^2.0.0",<% } %><% if (stylesLanguage === 'stylus') { %> "less-loader": "^2.0.0",<% } %><% if (stylesLanguage === 'stylus') { %>
"stylus-loader": "^0.5.0",<% } %> "stylus-loader": "^0.5.0",<% } %>

View File

@ -42,6 +42,9 @@ module.exports = {
},<% if (stylesLanguage === 'sass') { %> { },<% if (stylesLanguage === 'sass') { %> {
test: /\.sass/, test: /\.sass/,
loader: 'style-loader!css-loader!sass-loader?outputStyle=expanded' loader: 'style-loader!css-loader!sass-loader?outputStyle=expanded'
},<% } %><% if (stylesLanguage === 'scss') { %> {
test: /\.scss/,
loader: 'style-loader!css-loader!sass-loader?outputStyle=expanded'
},<% } %><% if (stylesLanguage === 'less') { %> { },<% } %><% if (stylesLanguage === 'less') { %> {
test: /\.less/, test: /\.less/,
loader: 'style-loader!css-loader!less-loader' loader: 'style-loader!css-loader!less-loader'

View File

@ -52,6 +52,9 @@ module.exports = {
},<% if (stylesLanguage === 'sass') { %> { },<% if (stylesLanguage === 'sass') { %> {
test: /\.sass/, test: /\.sass/,
loader: 'style-loader!css-loader!sass-loader?outputStyle=expanded' loader: 'style-loader!css-loader!sass-loader?outputStyle=expanded'
},<% } %><% if (stylesLanguage === 'scss') { %> {
test: /\.scss/,
loader: 'style-loader!css-loader!sass-loader?outputStyle=expanded'
},<% } %><% if (stylesLanguage === 'less') { %> { },<% } %><% if (stylesLanguage === 'less') { %> {
test: /\.less/, test: /\.less/,
loader: 'style-loader!css-loader!less-loader' loader: 'style-loader!css-loader!less-loader'

View File

@ -3,6 +3,7 @@
var React = require('react/addons'); var React = require('react/addons');
<% if (stylesLanguage === 'css') { %>require('../../styles/<%= classedName %>.css');<% } %> <% if (stylesLanguage === 'css') { %>require('../../styles/<%= classedName %>.css');<% } %>
<% if (stylesLanguage === 'sass') { %>require('../../styles/<%= classedName %>.sass');<% } %> <% if (stylesLanguage === 'sass') { %>require('../../styles/<%= classedName %>.sass');<% } %>
<% if (stylesLanguage === 'scss') { %>require('../../styles/<%= classedName %>.scss');<% } %>
<% if (stylesLanguage === 'less') { %>require('../../styles/<%= classedName %>.less');<% } %> <% if (stylesLanguage === 'less') { %>require('../../styles/<%= classedName %>.less');<% } %>
<% if (stylesLanguage === 'stylus') { %>require('../../styles/<%= classedName %>.styl');<% } %> <% if (stylesLanguage === 'stylus') { %>require('../../styles/<%= classedName %>.styl');<% } %>

View File

@ -0,0 +1,3 @@
.<%= classedName %>{
border: 1px dashed #f00;
}

View File

@ -141,6 +141,10 @@ describe('react-webpack generator', function() {
assertStyle('sass', done); assertStyle('sass', done);
}); });
it('should use scss style lang', function (done) {
assertStyle('scss', done);
});
it('should use less style lang', function (done) { it('should use less style lang', function (done) {
assertStyle('less', done); assertStyle('less', done);
}); });