vue-element-template使用echart折線圖碰到的問題
阿新 • • 發佈:2022-03-19
首先參考vue-element-admin中的自適應寬度:
把mixin資料夾複製到你的資料夾目錄
import resize from './mixins/resize'
//在props里加上這個
autoResize: {
type: Boolean,
default: true
},
另外還需要在@/src/utils/index.js中新增防抖函式,從admin複製下就好了,template中沒有。
/** 防抖函式 * @param {Function} func * @param {number} wait * @param {boolean} immediate * @return {*} */ export function debounce(func, wait, immediate) { let timeout, args, context, timestamp, result const later = function() { // 據上一次觸發時間間隔 const last = +new Date() - timestamp // 上次被包裝函式被呼叫時間間隔 last 小於設定時間間隔 wait if (last < wait && last > 0) { timeout = setTimeout(later, wait - last) } else { timeout = null // 如果設定為immediate===true,因為開始邊界已經呼叫過了此處無需呼叫 if (!immediate) { result = func.apply(context, args) if (!timeout) context = args = null } } } return function(...args) { context = this timestamp = +new Date() const callNow = immediate && !timeout // 如果延時不存在,重新設定延時 if (!timeout) timeout = setTimeout(later, wait) if (callNow) { result = func.apply(context, args) context = args = null } return result } }
至此echart的影象在頁面能自適應寬度了