vue 判斷元素內容是否超過寬度的方式
我就廢話不多說了,大家還是直接看代碼吧~
let isOverflow = this.$refs.isOverflow;
for (let i in isOverflow) {
let cWidth = isOverflow[i].clientWidth;
let sWidth = isOverflow[i].scrollWidth;
if (sWidth > cWidth) { //超過
this.$set(this.isEllipsis, i, true);
} else {
this.$set(this.isEllipsis, i, false);
}
}
補充知識:Vue h5 里面如何動態(tài)設置返回時候meta 里面的title屬性
Vue h5 里面如何動態(tài)設置返回時候meta 里面的title屬性

百度了很多博客,有兩種方法,
方法1 :
通過設置router.js 里面,路由切換時候 修改 meta 屬性 但是感覺沒必要這樣
{
path: '/teachers',
name: 'TDetail',
component: TDetail,
meta: {
title:"教師詳情",
content: 'disable'
}
},
{
path: '/article',
name: 'Article',
component: Article,
meta: {
title: "文章詳情",
content: 'disable-no'
}
},
//main.js里面的代碼
router.beforeEach((to, from, next) => {
/* 路由發(fā)生變化修改頁面meta */
if(to.meta.content){
let head = document.getElementsByTagName('head');
let meta = document.createElement('meta');
meta.content = to.meta.content;
head[0].appendChild(meta)
}
/* 路由發(fā)生變化修改頁面title */
if (to.meta.title) {
document.title = to.meta.title;
}
next()
});
方法2 :
可以直接通過
document.title = '想要設置的title';
但是需要注意的是,這種寫法需要注意Vue 里面的生命周期,需要在beforeRouteEnter 里面設置,下面是代碼
beforeRouteEnter (to, from, next) {
next(vm => {
document.title = '律師大數據'
})
},
但是開發(fā)里面遇到了坑,有時候這種寫法根本不起效果,然后嘗試在 beforeCreate里面也設置了下,最終總結出來的規(guī)律是,如果 只在 beforeRouteEnter 修改 document.title = '想要設置的title';不起效果的話,那就同時也把 beforeCreate寫進來,這樣肯定是能改變 頁面的 meta 屬性的,下面是代碼
beforeCreate () {
document.title = '111律師大數據'
},
beforeRouteEnter (to, from, next) {
next(vm => {
document.title = '律師大數據'
})
},
但是 ,經過打印,實際起效果的是,beforeRouteEnter里面設置的 document.title = '律師大數據'
以上這篇vue 判斷元素內容是否超過寬度的方式就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
vue-cli history模式實現tomcat部署報404的解決方式
這篇文章主要介紹了vue-cli history模式實現tomcat部署報404的解決方式,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-09-09

