如何将数据从一个js文件传递到另一个react.js文件

时间:2015-06-22 10:51:01

标签: reactjs nodes electron

我想将数据从一个js文件传递到另一个js文件,这里是我的代码:(react.js)

<script type="text/jsx">
/** @jsx React.DOM */
var APP=
React.createClass({
    getInitialState:function(){
        return{
            result:[]
        };
    },
    componentDidMount: function() {
        alert("DidMount");
        var data = getData();
            alert("final")
    },
        render: function () {
        alert("render");
             return(
                <table className="table table-bordered">
                <tr>
                <th>Name</th>
                <th>Class</th>
                <th>D.O.B</th>
                </tr>
        </table>
)
        }
    })
React.renderComponent(
        <APP/>,
        document.getElementById('root'));

我的js文件是:

    getData1=function() {
    alert("initial")
    var Connection = require('tedious').Connection;
    var  Request = require('tedious').Request;
    var config = {
        userName: 'zxzx',
        password: '******',
        server: 'xxxxxxx',// You can use 'localhost\\instance' to connect to named instance
        options: {
            database: 'xxxx',
            rowCollectionOnRequestCompletion: true,
            useColumnNames : true
        }
    };
    var connection = new Connection(config);
    connection.on('connect', function (err) {
        if (err) {
            console.log(err)
        }
        request = new Request("SELECT * FROM XXXXX", function (err, rowCount, rows) {
            if (err) {
                //console.log(err);
                callback(err, null);
            } else {
                console.log(+'rows Count: ' + rowCount);
                console.log(JSON.stringify(rows));
                var datas = JSON.stringify(rows);
                alert(datas)
                alert("rows")
                return datas;
            }
            connection.close();
        });
        connection.execSql(request);
    });
}

我想要的是我需要在反应中调用函数时返回数据,这里发生的是在我的控制台中它显示数据,但在反应中数据是空的,即数据不返回正确。任何人都可以为它提供解决方案吗?

1 个答案:

答案 0 :(得分:1)

这是一个常见问题,假设您尝试使用的反应文件已经在您尝试使用它的代码之前加载,那么它可以正常工作。

只要让一个组件与另一个组件通信,您就需要查看此文档。

https://facebook.github.io/react/tips/communicate-between-components.html

当组件需要侦听全局事件等时...只需设置一个事件并让您的组件订阅它。

https://developer.mozilla.org/en-US/docs/Web/Guide/Events/Creating_and_triggering_events