在Ember JS中处理临时记录状态的正确方法是什么?

时间:2017-03-17 09:55:46

标签: ember.js ember-data

假设我有一个记录列表,这些记录应该在某些当前上下文中具有状态selected。我可以在这里看到两种方法:

  1. 创建一个对象数组:records.map(record => { record: record, selected: false }),get和set,如`recordObj.set(' selected',true)。渲染此数组。

  2. 在记录对象上显式设置属性:record.set('selected', true)。渲染RecordArray。

  3. 第二个看起来比第一个容易得多,因为你不必管理额外的数组和对象(这变得非常麻烦)。

    问题是如果你在记录对象上设置任何东西,甚至是模型中不存在的字段,它仍然会在应用程序中持续存在(我想是在重新加载模型并创建新的记录对象之前?) 。

    如何防止这种情况并确保每次路线更改时临时属性都是干净的?或者如何改进第一种方法?我有什么遗失的吗?

1 个答案:

答案 0 :(得分:0)

在路线档案中

        DataGridViewImageColumn iconColumn = new DataGridViewImageColumn();
        iconColumn.Name = "AirplaneImage";
        iconColumn.HeaderText = "Airplane Image";
        dataGridView1.Columns.Insert(5, iconColumn);

        for (int row = 0; row < dataGridView1.Rows.Count - 1; row++)
        {
            Bitmap bmp = new Bitmap(Application.StartupPath + "\\Data\\AirPlaneData\\" + dt.Rows[row][4]);
            ((DataGridViewImageCell)dataGridView1.Rows[row].Cells[5]).Value = bmp;
        }

这将确保您每次离开路线都是安全的。