合计数
# 待办任务列表

# 1.1 react-intl-universal
国际化
注意:
如果使用多语言需要结合后台实现
https://blog.csdn.net/zhuming3834/article/details/98847188
https://blog.csdn.net/qq_35089721/article/details/84635057
同时使用 value 和 defaultValue属性造成,由于受控组件和非受控组件混用造成
Warning: A future version of React will block javascript: URLs as a security precaution. 类似 <a href={javascript:;}/>&<a href={javascript:void(0)}/>被禁止
replacng javascript:void(0) to href='#' onClick={e => e.preventDefault()}>
## 1.2 task.js
前台 规则-->事件。
刷新字表。
```js
-- 001
const totalNumberDes = '合计数:';
-- 002
this.state = {
selectedRowKeys: [],
userData: [],
taskStatus: [],
errMsg: [],
status: { 'ENABLE': intlGetD('status.enable'), 'DISABLE': intlGetD('status.disable'), 'DEL': intlGetD('delete') },
hoverIndex: -1,
visible: false,
infovisible: false,
record: fsscIframeSrc ? { 'url': decodeURIComponent(fsscIframeSrc) } : {},
totalNumber: 0,
--003
// 01.页面 勾选数据 触发的初始化位置。
onSelectedRowKeysChange = (ind, selectedRows) => {
// if(selectedRows[0]&&!selectedRows[0].selective){
// message.warning('当前项不可选');
// return false;
// }
// this.setState({ selectedRowKeys });
let { selectedRowKeys, userData, totalNumber } = this.state;
let updateNumber = 0;
totalNumber = 0.00;
// totalNumber = parseInt(totalNumber);
if (selectedRowKeys.indexOf(ind) === -1) {
let has = [...selectedRowKeys, ind];
let selectData = has.map((item) => {
return userData[item];
});
// selectData 是选中的数据
selectData.forEach(data => {
if (data.amount !== '-') {
updateNumber = parseInt(data.amount.substr(1, data.amount.length));
} else {
updateNumber = 0;
}
totalNumber += updateNumber;
});
let hasC1 = this.isBillFromC1(selectData);
this.setState({
totalNumber: totalNumber,
selectedRowKeys: has,
batchPrintDisable: hasC1
});
} else {
let hasArray = selectedRowKeys.filter(item => item !== ind);
// 通过hasArray去处理数据
let selectData = hasArray.map((item) => {
return userData[item];
});
selectData.forEach(data => {
if (data.amount !== '-') {
// data.amount='';
let res = 0;
res = data.amount.substr(1, data.amount.length);
updateNumber = parseInt(data.amount.substr(1, data.amount.length));
} else {
updateNumber = 0;
}
totalNumber += updateNumber;
});
let hasC1 = this.isBillFromC1(selectData);
this.setState({
totalNumber: totalNumber,
selectedRowKeys: hasArray,
batchPrintDisable: hasC1
});
}
}
-- 004
{/* 2020-02-19 hejie 合计数,如果使用多语言需要结合后台实现 */}
<span style={{ marginLeft: '10px' }}>{totalNumberDes} <span style={{color: 'red'}}>{totalNumber}</span> </span>
```
## 1.3 效果
