export function calcStr(str, limit = 50) {
let newStr = ''
if (str.length > limit) {
newStr = str.slice(0, limit) + '...'
} else {
newStr = str
}
return {
str,
newStr,
disableTooltip: !(str.length > limit),
}
}
<el-table-column prop="xxx" label="xxx">
<template slot-scope="scope">
<el-tooltip :disabled="calcStr(scope.row.xxx).disableTooltip">
<div slot="content" style="max-width: 500px">
{{ calcStr(scope.row.xxx).str }}
</div>
<div>
{{ calcStr(scope.row.xxx).newStr }}
</div>
</el-tooltip>
</template>
</el-table-column>
<script>
import { calcStr } from './util.js'
export default {
data() {
return {
calcStr: Object.freeze(calcStr)
}
}
</script>