mirror of
https://github.com/react-webpack-generators/generator-react-webpack.git
synced 2025-12-08 18:01:59 +00:00
Merge remote-tracking branch 'newtriks/master'
Conflicts: README.md
This commit is contained in:
commit
e90aaa46b6
30
README.md
30
README.md
@ -58,7 +58,7 @@ yo react-webpack:component foo //or just: yo react-webpack:c foo
|
||||
```
|
||||
|
||||
Produces `src/components/Foo.js` (*javascript - JSX*):
|
||||
```
|
||||
```js
|
||||
'use strict';
|
||||
|
||||
var React = require('react/addons');
|
||||
@ -79,7 +79,7 @@ module.exports = Foo;
|
||||
```
|
||||
|
||||
And `test/spec/components/Foo.js` (*javascript - jasmine*):
|
||||
```
|
||||
```js
|
||||
'use strict';
|
||||
|
||||
describe('Foo', function () {
|
||||
@ -97,7 +97,7 @@ describe('Foo', function () {
|
||||
```
|
||||
|
||||
And `src/styles/Foo.css` (or .sass, .less etc...) :
|
||||
```
|
||||
```css
|
||||
.Foo{
|
||||
border: 1px dashed #f00;
|
||||
}
|
||||
@ -110,7 +110,7 @@ For all you lazy programmers out there, we've added another shortcut - `rich` fl
|
||||
yo react-webpack:c foofoo --rich
|
||||
```
|
||||
This will give you all of react component's most common stuff :
|
||||
````
|
||||
```js
|
||||
var React = require('react/addons');
|
||||
|
||||
require('styles/Foofoo.sass');
|
||||
@ -135,7 +135,7 @@ This will give you all of react component's most common stuff :
|
||||
});
|
||||
|
||||
module.exports = Foofoo;
|
||||
````
|
||||
```
|
||||
|
||||
Just remove those you don't need, then fill and space out the rest.
|
||||
|
||||
@ -153,7 +153,7 @@ yo react-webpack:action bar //or just: yo react-webpack:a bar
|
||||
Will create a file - `src/actions/BarActionCreators.js`
|
||||
|
||||
if 'architecture' is **Flux**, it Produces :
|
||||
```
|
||||
```js
|
||||
'use strict';
|
||||
|
||||
var BarActionCreators = {
|
||||
@ -163,7 +163,7 @@ var BarActionCreators = {
|
||||
module.exports = BarActionCreators;
|
||||
```
|
||||
And if it's **Reflux**:
|
||||
```
|
||||
```js
|
||||
'use strict';
|
||||
|
||||
var Reflux = require('reflux');
|
||||
@ -177,7 +177,7 @@ module.exports = BarActionCreators;
|
||||
```
|
||||
|
||||
and same test for both architectures:
|
||||
```
|
||||
```js
|
||||
'use strict';
|
||||
|
||||
describe('BarActionCreators', function() {
|
||||
@ -204,7 +204,7 @@ yo react-webpack:store baz //or just: yo react-webpack:s baz
|
||||
Will create a file - `src/stores/BazStore.js`
|
||||
|
||||
if 'architecture' is **Flux**, it Produces :
|
||||
```
|
||||
```js
|
||||
'use strict';
|
||||
|
||||
var EventEmitter = require('events').EventEmitter;
|
||||
@ -226,7 +226,7 @@ BazStore.dispatchToken = MainAppDispatcher.register(function(action) {
|
||||
module.exports = BazStore;
|
||||
```
|
||||
And if it's **Reflux**:
|
||||
```
|
||||
```js
|
||||
'use strict';
|
||||
|
||||
var Reflux = require('reflux');
|
||||
@ -243,7 +243,7 @@ module.exports = BazStore;
|
||||
```
|
||||
|
||||
and same test for both architectures:
|
||||
```
|
||||
```js
|
||||
'use strict';
|
||||
|
||||
describe('BazStore', function() {
|
||||
@ -279,20 +279,18 @@ js or jsx
|
||||
|
||||
Sets the file suffix for generated components. Defaults to "js". Please note that you need to require files *including* the file ending when using jsx as suffix. Example:
|
||||
|
||||
```javascript
|
||||
```js
|
||||
var MyJSComponent = require('./MyJSComponent');
|
||||
var MyJSX = require('./MySQJ.jsx');
|
||||
var MyJSX = require('./MyJSX.jsx');
|
||||
```
|
||||
|
||||
Generated files and tests are automatically created this way so they will include the correct type by default.
|
||||
|
||||
### architecture
|
||||
|
||||
[flux](https://facebook.github.io/flux/) or [reflux](https://github.com/spoike/refluxjs)
|
||||
|
||||
### es6
|
||||
|
||||
If you are using `es6`, and want to use its export functionality (and not webpack's), just add `--es6` flag when you create a component, action or srore.
|
||||
If you are using `es6`, and want to use its export functionality (and not webpack's), just add `--es6` flag when you create a component, action or store.
|
||||
|
||||
|
||||
## Testing
|
||||
|
||||
@ -24,6 +24,9 @@ ActionGenerator.prototype.createActionFile = function createActionFile() {
|
||||
case 'reflux':
|
||||
actionTemplate = 'RefluxAction';
|
||||
break;
|
||||
case 'alt':
|
||||
actionTemplate = 'AltAction';
|
||||
break;
|
||||
}
|
||||
|
||||
console.log('Creating ' + this.architecture + ' action');
|
||||
|
||||
@ -72,11 +72,12 @@ ReactWebpackGenerator.prototype.askForArchitecture = function() {
|
||||
this.prompt({
|
||||
type : 'list',
|
||||
name : 'architecture',
|
||||
message : 'Would you like to use one of those architectures?',
|
||||
message : 'Would you like to use one of these architectures?',
|
||||
choices: [
|
||||
{name:'No need for that, thanks',value:false},
|
||||
{name:'Flux',value:'flux'},
|
||||
{name:'ReFlux',value:'reflux'}
|
||||
{name:'ReFlux',value:'reflux'},
|
||||
{name:'Alt',value:'alt'}
|
||||
],
|
||||
default : false
|
||||
}, function(props) {
|
||||
|
||||
@ -27,3 +27,9 @@ MainGenerator.prototype.createDispatcher = function createDispatcher() {
|
||||
this.appTemplate('Dispatcher', 'dispatcher/' + this.scriptAppName + 'Dispatcher');
|
||||
}
|
||||
};
|
||||
|
||||
MainGenerator.prototype.createAltjsFile = function createAltjsFile() {
|
||||
if(this.env.options.architecture=='alt') {
|
||||
this.appTemplate('alt', 'alt');
|
||||
}
|
||||
};
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "generator-react-webpack",
|
||||
"version": "1.2.6",
|
||||
"version": "1.2.7",
|
||||
"description": "Yeoman generator for ReactJS and Webpack",
|
||||
"keywords": [
|
||||
"yeoman-generator",
|
||||
@ -40,7 +40,8 @@
|
||||
"yo": ">=1.2.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=0.10.0"
|
||||
"node": ">=0.10.0",
|
||||
"iojs": ">=1.1.0"
|
||||
},
|
||||
"licenses": [
|
||||
{
|
||||
|
||||
@ -26,6 +26,9 @@ StoreGenerator .prototype.createStoreFile = function createStoreFile() {
|
||||
case 'reflux':
|
||||
storeTemplate = 'RefluxStore';
|
||||
break;
|
||||
case 'alt':
|
||||
storeTemplate = 'AltStore';
|
||||
break;
|
||||
}
|
||||
|
||||
console.log('Creating ' + this.architecture + ' store');
|
||||
|
||||
@ -14,7 +14,8 @@
|
||||
"flux": "^2.0.1",
|
||||
"events": "^1.0.2",
|
||||
"object-assign": "^2.0.0", <% } if (architecture === 'reflux') {%>
|
||||
"reflux": "^0.2.7", <% } %>
|
||||
"reflux": "^0.2.7", <% } if (architecture === 'alt') { %>
|
||||
"alt": "^0.16.5", <% } %>
|
||||
"react": "~0.12.2",
|
||||
"normalize.css": "~3.0.3"
|
||||
},
|
||||
|
||||
11
templates/javascript/AltAction.js
Normal file
11
templates/javascript/AltAction.js
Normal file
@ -0,0 +1,11 @@
|
||||
var alt = require('../alt');
|
||||
|
||||
<% if (es6) { %>class <%= classedName %> {
|
||||
|
||||
}; <% }
|
||||
else { %>var <%= classedName %> = alt.createActions(function () {
|
||||
|
||||
}); <% } %>
|
||||
|
||||
<% if (es6) { %>export default alt.createActions(<%= classedName %>); <% }
|
||||
else { %>module.exports = <%= classedName %>; <% } %>
|
||||
21
templates/javascript/AltStore.js
Normal file
21
templates/javascript/AltStore.js
Normal file
@ -0,0 +1,21 @@
|
||||
var alt = require('../alt');
|
||||
|
||||
<% if (es6) { %>class <%= classedName %> {
|
||||
constructor() {
|
||||
|
||||
this.bindListeners({
|
||||
|
||||
});
|
||||
|
||||
}
|
||||
} <% }
|
||||
else { %>var <%= classedName %> = alt.createStore({
|
||||
|
||||
bindListeners: {
|
||||
|
||||
}
|
||||
|
||||
}); <% } %>
|
||||
|
||||
<% if (es6) { %>export default alt.createStore(<%= classedName %>, '<%= classedName %>'); <% }
|
||||
else { %>module.exports = <%= classedName %>; <% } %>
|
||||
4
templates/javascript/alt.js
Normal file
4
templates/javascript/alt.js
Normal file
@ -0,0 +1,4 @@
|
||||
var Alt = require('alt');
|
||||
var alt = new Alt();
|
||||
|
||||
module.exports = alt;
|
||||
Loading…
x
Reference in New Issue
Block a user