Commit e3eb3124 by zhaochengxiang

高亮逻辑修改

parent 61325f2f
...@@ -183,14 +183,44 @@ function highlightSearchContent(content) { ...@@ -183,14 +183,44 @@ function highlightSearchContent(content) {
) )
} }
export function searchContentAddDecorate(content, terms) {
if (!content || content==='') return '';
if ((terms||[]).length===0 || typeof(content)!=='string') return content;
let start = -1;
let useTerm = '';
terms.forEach(term => {
const index = content.indexOf(term);
if (index !== -1) {
if (start === -1) {
start = index;
useTerm = term;
} else if (index<start) {
start = index;
useTerm = term;
}
}
})
if (start > -1) {
const beforeStr = content.substr(0, start);
const middleStr = content.substr(start, useTerm.length);
const afterStr = content.substr(start + useTerm.length);
return `${beforeStr}<em>${middleStr}</em>${searchContentAddDecorate(afterStr, terms)}`;
}
return content;
}
export function highlightSearchContentByTerms(content, terms) { export function highlightSearchContentByTerms(content, terms) {
if (!content || content==='') return ''; if (!content || content==='') return '';
if ((terms||[]).length===0 || typeof(content)!=='string') return content; if ((terms||[]).length===0 || typeof(content)!=='string') return content;
let processContent = content; let processContent = content;
(terms||[]).forEach(term => { processContent = searchContentAddDecorate(processContent, terms);
processContent = processContent.replace(term, `<em>${term}</em>`);
})
return highlightSearchContent(processContent); return highlightSearchContent(processContent);
} }
\ No newline at end of file
...@@ -186,27 +186,23 @@ class MapContent extends React.Component { ...@@ -186,27 +186,23 @@ class MapContent extends React.Component {
onSquareItemClick = (item) => { onSquareItemClick = (item) => {
const { breadcrumbContents } = this.state; const { breadcrumbContents } = this.state;
this.loadedRowsMap = {}; dispatchLatest({
type: 'map.getTableModelByDirIid',
this.setState({ breadcrumbContents: [...breadcrumbContents, { name: item.dirName || '', data: item }] }, () => { payload: {
dirId: item.dirId,
dispatchLatest({ topNum: defaultLoadCount
type: 'map.getTableModelByDirIid', },
payload: { callback: data => {
dirId: item.dirId,
topNum: defaultLoadCount
},
callback: data => {
this.convertRemoteData(data || [], item.id, item.dirId);
item.children = (data || []).filter(item => item.dbType!=='More');
this.setState({
curTableModelData: item.children || [],
haveMoreData: (item.children||[]).length===defaultLoadCount,
});
}
})
this.loadedRowsMap = {};
this.convertRemoteData(data || [], item.id, item.dirId);
item.children = (data || []).filter(item => item.dbType!=='More');
this.setState({
breadcrumbContents: [...breadcrumbContents, { name: item.dirName || '', data: item }],
curTableModelData: item.children || [],
haveMoreData: (item.children||[]).length===defaultLoadCount,
});
}
}) })
} }
......
...@@ -276,7 +276,7 @@ class Model extends React.Component { ...@@ -276,7 +276,7 @@ class Model extends React.Component {
<span>模型创建:</span> <span>模型创建:</span>
<Button type="primary" onClick={this.onImportExcelBtnClick}>Excel导入</Button> <Button type="primary" onClick={this.onImportExcelBtnClick}>Excel导入</Button>
<Button type="primary" onClick={this.onImportExcelCopyBtnClick}>Excel复制粘贴</Button> <Button type="primary" onClick={this.onImportExcelCopyBtnClick}>Excel复制粘贴</Button>
<Button type="primary" onClick={this.onImportDDLBtnClick}>DDL导入</Button> {/* <Button type="primary" onClick={this.onImportDDLBtnClick}>DDL导入</Button> */}
</Space> </Space>
<Space> <Space>
<span>模型导出:</span> <span>模型导出:</span>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment