import React, { Component } from 'react'; import './index.less'; import { formatPercent } from '../../../../src/services/Tools'; function getKey(type, index, selected, answer) { return `${(selected[type] || [])[index] ? 'selected' : ''} ${(answer[type] || [])[index] ? 'true' : 'false'}`; } function getDoubleKey(type, index, selected, answer, position) { return `${((selected[type] || [])[index] || [])[position] ? 'selected' : ''} ${((answer[type] || [])[index] || [])[position] ? 'true' : 'false'}`; } export default class AnswerList extends Component { render() { return
{this.renderDetail()}
; } renderDetail() { const { type } = this.props; switch (type) { case 'single': return this.renderList(); case 'double': return this.renderTable(); default: return
; } } renderList() { const { selected = {}, answer = {}, show, list = [], distributed = [], type } = this.props; const count = distributed.reduce((x, y) => x + y, 0); return (
{list.map((item, index) => { return (
{item}
{show &&
{formatPercent(distributed[index], count, false)}用户选择该选项
}
); })}
); } renderTable() { const { selected = {}, answer = {}, show, list = [], type, first, second } = this.props; return ( {list.map((item, index) => { return ( ); })}
{first} {second}
{item}
); } }