From 587af2e8887a33c55fc4c2cc14d0c0df9533a85f Mon Sep 17 00:00:00 2001 From: Sean Landsman Date: Thu, 25 May 2017 12:21:02 +0100 Subject: [PATCH] AG-420 Improve React implementation --- package.json | 36 ++++++++++--------- .../components/FxQuoteMatrix.jsx | 6 ++-- .../components/TopMoversGrid.jsx | 6 ++-- src-trader-dashboard/index.js | 1 - webpack.config.trader.js | 3 +- 5 files changed, 28 insertions(+), 24 deletions(-) diff --git a/package.json b/package.json index d7680dd..0d70f68 100644 --- a/package.json +++ b/package.json @@ -8,6 +8,7 @@ "standard": "webpack-dev-server --config webpack.config.standard.js --progress --colors --hot --inline", "grouped": "webpack-dev-server --config webpack.config.grouped.js --progress --colors --hot --inline", "trader": "webpack-dev-server --content-base src-trader-dashboard/ --config webpack.config.trader.js --progress --colors --hot --inline", + "examples": "webpack-dev-server --content-base src/ --config webpack.config.examples.js --progress --colors --hot --inline", "large": "webpack-dev-server --config webpack.config.large.js --progress --colors --hot --inline", "clean": "rimraf dist", "build-standard": "npm run clean && webpack --config webpack.config.standard.js --progress --profile --bail" @@ -29,27 +30,30 @@ }, "homepage": "http://www.ag-grid.com/", "devDependencies": { - "babel-core": "6.0.0", - "babel-loader": "6.2.1", - "babel-preset-es2015": "6.3.13", - "babel-preset-react": "6.3.13", - "babel-preset-stage-0": "^6.24.1", - "babel-preset-stage-1": "6.24.1", - "css-loader": "0.23.1", - "style-loader": "0.13.0", - "webpack": "1.12.11", - "webpack-dev-server": "1.14.1" + "babel-core": "6.24.x", + "babel-loader": "6.4.x", + "babel-preset-es2015": "6.24.x", + "babel-preset-react": "6.24.x", + "babel-preset-stage-0": "6.24.x", + "babel-preset-stage-1": "6.24.x", + "css-loader": "0.23.x", + "style-loader": "0.13.x", + "webpack": "1.12.x", + "webpack-dev-server": "1.14.x" }, "dependencies": { + "ag-grid": "10.0.x", + "ag-grid-enterprise": "10.0.x", + "ag-grid-react": "10.0.x", + "bootstrap": "^3.3.7", "d3": "4.9.1", + "file-loader": "^0.11.1", "lodash": "4.17.4", "react": "15.5.x", "react-dom": "15.5.x", - "react-redux": "5.0.5", - "redux": "3.6.0", - "rimraf": "2.5.x", - "ag-grid": "10.0.x", - "ag-grid-enterprise": "10.0.x", - "ag-grid-react": "10.0.x" + "react-redux": "5.0.x", + "react-router-dom": "4.1.x", + "redux": "3.6.x", + "rimraf": "2.5.x" } } diff --git a/src-trader-dashboard/components/FxQuoteMatrix.jsx b/src-trader-dashboard/components/FxQuoteMatrix.jsx index ca4bfc9..74e684e 100644 --- a/src-trader-dashboard/components/FxQuoteMatrix.jsx +++ b/src-trader-dashboard/components/FxQuoteMatrix.jsx @@ -21,10 +21,10 @@ class FxQuoteMatrix extends Component { onGridReady(params) { this.gridApi = params.api; this.columnApi = params.columnApi; - } - componentDidMount() { - this.gridApi.setRowData(this.props.rowData); + if (this.props.rowData) { + this.gridApi.setRowData(this.props.rowData) + } } componentWillReceiveProps(nextProps) { diff --git a/src-trader-dashboard/components/TopMoversGrid.jsx b/src-trader-dashboard/components/TopMoversGrid.jsx index 61873fa..e77a1f2 100644 --- a/src-trader-dashboard/components/TopMoversGrid.jsx +++ b/src-trader-dashboard/components/TopMoversGrid.jsx @@ -44,10 +44,10 @@ class TopMoversGrid extends Component { onGridReady(params) { this.gridApi = params.api; this.columnApi = params.columnApi; - } - componentDidMount() { - this.gridApi.setRowData(this.props.rowData); + if (this.props.rowData) { + this.gridApi.setRowData(this.props.rowData); + } this.gridApi.sizeColumnsToFit(); } diff --git a/src-trader-dashboard/index.js b/src-trader-dashboard/index.js index f4b3e07..77198e5 100644 --- a/src-trader-dashboard/index.js +++ b/src-trader-dashboard/index.js @@ -7,7 +7,6 @@ import {Provider} from "react-redux"; import "ag-grid-root/dist/styles/ag-grid.css"; import "ag-grid-root/dist/styles/theme-fresh.css"; -// import "ag-grid-root/dist/styles/theme-blue.css"; import StoreService from './services/StoreService'; import TraderDashboard from "./components/TraderDashboard.jsx"; diff --git a/webpack.config.trader.js b/webpack.config.trader.js index 5e308fa..9dd94a8 100644 --- a/webpack.config.trader.js +++ b/webpack.config.trader.js @@ -27,6 +27,7 @@ module.exports = { resolve: { alias: { "ag-grid-root" : __dirname + "/node_modules/ag-grid" - } + }, + extensions: ['', '.js', '.jsx'] } }; \ No newline at end of file