这是我的代码,我将行拖放到同一个UITableview部分。我创建了数组hiddenOrderList。
fieldArray
我想将行从第一部分拖放到另一部分。
const getMockedFields = (fieldNames, periods) => {
const field = {
get: idx => periods[idx],
};
return {
map: callback => fieldNames.map((fieldname, idx) => callback(fieldname, idx, field)),
};
};
const fieldNames = ['periods[0]', 'periods[1]'];
const periods = [{
fom: '2017-10-01',
id: '2017-10-01 | 2017-10-10',
openForm: false,
tom: '2017-10-10',
updated: false,
}, {
fom: '2018-10-01',
id: '2018-10-01 | 2018-10-10',
openForm: true,
tom: '2018-10-10',
updated: false,
}];
const updatePeriode = sinon.spy();
const editPeriode = sinon.spy();
const cancelEditPeriode = sinon.spy();
const isAnyFormOpen = sinon.spy();
describe('<UttakPeriod>', () => {
it('should render UttakPeriod', () => {
const wrapper = shallowWithIntl(<UttakPeriod
fields={getMockedFields(fieldNames, periods)}
updatePeriode={updatePeriode}
editPeriode={editPeriode}
cancelEditPeriode={cancelEditPeriode}
isAnyFormOpen={isAnyFormOpen}
periods={periods}
meta={meta}
readOnly
/>);
const uttakPeriodType = wrapper.find('UttakPeriodType');
expect(uttakPeriodType).to.have.length(2);
const uttakPeriodContent= wrapper.find('UttakPeriodContent');
expect(uttakPeriodContent).to.have.length(2);
});
下面,我为我的第一部分创建了自定义单元格:
var displayedOrderList = [CarouselOrder]()
var hiddenOrderList = [CarouselOrder]()
我可以将行拖放到同一部分,但我想拖放到另一部分。当我拖放到另一个部分时,应用程序崩溃了&#34;致命错误:索引超出范围&#34;消息。
func tableView(_: UITableView, numberOfRowsInSection section: Int) -> Int {
switch section {
case 0:
return displayedOrderList.count
case 1:
return hiddenOrderList.count
default:
return 1
}
}