ReactJS+Flumpot 카운터 샘플 중 하나
11881 단어 ReactJavaScriptFlumptflux
의 목적
Flumpt가 어떤 물건인지 알기 위해 만져보세요.
추기: 두 번째
파일 구성
.
├── dest
│ └── app.js
├── index.html
├── package.json
└── src
└── app.jsx
package
pacage.json
{
"devDependencies": {
"babel-preset-es2015": "^6.3.13",
"babel-preset-react": "^6.3.13",
"babelify": "^7.2.0",
"browserify": "^12.0.1",
"watchify": "^3.6.1"
},
"scripts": {
"build": "browserify src/app.jsx -o dest/app.js -t [ babelify --presets [ es2015 react ] ]",
"watch": "watchify -t [ babelify --presets [ es2015 react ] ] src/app.jsx -o dest/app.js -v"
},
"dependencies": {
"flumpt": "^0.1.3",
"flux": "^2.1.1",
"react": "^0.14.3",
"react-dom": "^0.14.3"
}
}
실행
$ npm install
$ npm run build
$ npm run watch
code
src/app.jsx
'use strict';
import * as React from 'react'; //eslint-disable-line
import {Flux, Component} from 'flumpt';
import {render} from 'react-dom';
class CounterComponent extends Component {
render() {
return (
<div>
<p>count: {this.props.count}</p>
<div>
<button onClick={() => this.dispatch('increment')}>+1</button>
<button onClick={() => this.dispatch('decrement')}>-1</button>
</div>
</div>
);
}
}
class App extends Flux {
subscribe() {
this.on('increment', () => {
this.update(({count}) => {
return {count: count + 1};
});
});
this.on('decrement', () => {
this.update(({count}) => {
return {count: count - 1};
});
});
}
render(state) {
return <CounterComponent {...state}/>;
}
}
const app = new App({
renderer: el => {
render(el, document.querySelector('.js-container'));
},
initialState: {count: 0},
middlewares: [
// logger
(state) => {
console.log(state);
return state;
}
]
});
app.update(_initialState => (_initialState));
나타내다
$ python -m SimpleHTTPServer 8000
감상
import * as React from 'react';
의*
안 쓰면 안 돼요?app.update(_initialState => (_initialState));
의 글씨를 이렇게 써도 됩니까?추기
2015-12-27
테스트 추가 시도
참고 자료
Reference
이 문제에 관하여(ReactJS+Flumpot 카운터 샘플 중 하나), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/cortyuming/items/54b13904353bd67a3181텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)