dev-master
9999999-devReact Spark
MIT
The Requires
- php >=5.6.4
- laravel/framework 5.3.*
by Darren Merrett
laravel spark react
v0.1.10
0.1.10.0React Spark
MIT
The Requires
- php >=5.6.4
- laravel/framework 5.3.*
by Darren Merrett
laravel spark react
Wallogit.com
2017 © Pedro Peláez
React Spark
An extension of Laravel Spark to create Spark projects with React JS., (*1)
Spark Core untouched to ensure no future upgrade conflicts, (*2)
This does not replace vue components in the Spark core., (*3)
This extension separates your project into 2 modules. The Spark Core remains as is working with Blade templates, Bootstrap front-end framework and Vue components. Your project will look like it's part of the Spark Core but it will use a separate Blade template which only uses Bootstrap styling and React javascript Library., (*4)
Require the darrenmerrett/react-spark package in your composer.json and update your dependencies., (*5)
composer require darrenmerrett/react-spark
Install npm modules with dependancies, (*6)
npm install react-spark-js
Add the ReactSpark\ServiceProvider to your config/app.php providers array:, (*7)
'darrenmerrett\ReactSpark\ReactSparkServiceProvider'
Finally, publish files into resources., (*8)
php artisan vendor:publish --provider="darrenmerrett\ReactSpark\ReactSparkServiceProvider"
Update the darrenmerrett/react-spark package., (*9)
composer update darrenmerrett/react-spark
Then update the npm modules, (*10)
npm update react-spark-js
Start creating your React app inside, (*11)
resources\assets\js\
Include your React Components into, (*12)
resources\assets\js\index.js i.e. require('./my-component.js');
You can safely edit Blade 'sections' here, (*13)
resources\views\react-spark\reactApp.blade.php
Next, add the following to your app blade files. This will include your JS bundle and the Spark nav bar., (*14)
@extends('react-spark.reactApp')
To build your app for development:, (*15)
php artisan react-spark:build
To build your app for production, (*16)
php artisan react-spark:build --production
To "watch" for file changes whilst your creating your app, (*17)
php artisan react-spark:build watch php artisan react-spark:build watch --production
First, add your reducers in resources\assets\js\reactApp\reducers.js, (*18)
Access the store dispatch method by adding the following statement after your component., (*19)
YourComponent.contextTypes = { store: React.PropTypes.object };
Then format your constructor as follows, (*20)
constructor(props,context) {
super(props,context);
}
You can now access the store dispatch method as follows, (*21)
this.context.store.dispatch(YOUR_ACTION);
To access your store add the dependancy, (*22)
import {connect} from 'react-redux';
Then add the following code after your component, (*23)
function mapStateToProps(state) {
return {
YOUR_STORE: state.YOUR_STORE,
};
}
function mapDispatchToProps(dispatch) {
return {};
}
function mergeProps(stateProps, dispatchProps, ownProps) {
return Object.assign({}, stateProps, ownProps);
}
export default connect(mapStateToProps, mapDispatchToProps, mergeProps)(YOUR_COMPONENT);
You can now access your store through props, (*24)
this.props.YOUR_STORE;
Released under the MIT License, see LICENSE., (*25)
React Spark
MIT
laravel spark react
React Spark
MIT
laravel spark react