javascript - 将 IndexedDB 中的数据拉入数组并通过 ReactJS 输出

标签 javascript indexeddb reactjs

我的实际 Javascript 代码如下:

var schoolsData = new Array();
myDB.schools
.each(function(school) {
    console.log('"' + school.title + '" wird auf den Array gepusht.');
    schoolsData.push(new Array(school.title, schools.schoolnumber, school.address, school.principal, school.email, school.creationdate, school.lastupdate, school.comment));
});
var SchoolsRender = React.createClass({
render: function() {
    return (
        <tr>
            {this.props.list.map(function(listValue){
                return <td>{listValue}</td>;
            })}
        </tr>
    )
}
});
ReactDOM.render(<SchoolsRender list={schoolsData} />, document.getElementById('schoolsDATA'));
正如你所看到的,我正在尝试从本地 IndexedDB 数据库(我使用的是 dexieJS)中提取数据,并通过 ReactJS 将其放入表元素中,但什么也没有出现。重点在哪里?

编辑:我认为问题基本上是我试图输出该 3D 数组。有没有简单又优雅的解决方案?

最佳答案

添加另一个组件 RowRender 来渲染单行。相应地修改 SchoolsRender 组件。

var RowRender = React.createClass({
    render: function() {
        return (
            <tr>
                <td>{this.props.title}</td>
                <td>{this.props.schoolnumber}</td>
                <td>{this.props.address}</td>
                <td>{this.props.principal}</td>
            </tr>
        )
    }
});
var SchoolsRender = React.createClass({
    render: function() {
        return (
            <table>
                {this.props.list.map(function(listValue,index){
                    return <RowRender key={index} title={listValue.title} schoolnumber={listValue.schoolnumber} address={listValue.address} title={listValue.address}  />;
                })}
            </table>
        )
    }
});

关于javascript - 将 IndexedDB 中的数据拉入数组并通过 ReactJS 输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37273721/

相关文章:

Javascript - 针对单个参数执行一组函数

PHP 变量到 JavaScript

javascript - fitBounds 和 getZoom 表现不佳

javascript - ReactJs this.props.history.push() 不起作用

javascript - 如何在reactjs中使用onclick事件渲染子组件?

javascript - 如何安装 Three.js?

security - 现代浏览器是否加密或以其他方式保护 IndexedDB 存储?

google-chrome - 检查 IndexedDB objectStore 是否已经包含键

indexeddb - 获取刚刚保存在 Dexie 中的 key 值

reactjs - 太多的重新渲染。 React 限制渲染次数以防止无限循环。在 render 方法中更新功能组件的状态