《SQL 反模式》 了解一下
前兩個和后兩個不是一起執(zhí)行輸出的吧
我覺得你應(yīng)該是
Bus.$emit('addValue',item)的時候觸發(fā)了之前注冊過的Bus.$on
this.$router.go(-1)的時候觸發(fā)了a.vue的mounted
<span class="el-tag el-tag--warning" v-for="item in list_label" @click="nameToInput(item.name)">{{item.name}}</span>
nameToInput(val){
$(".label_input").val()=val;
}官方已經(jīng)提供案例了呀:
好似寫的有點復(fù)雜。把倒計時時間,重置時間,計時器的偏差都加上了。
var s = 1000,
m = 60 * s,
h = 60 * m,
d = 24 * h,
tick_time = 1000,
timezone = new Date().getTimezoneOffset() * m;
var getDayTime = function(t) {
t = t.split(':');
return t[0] * h + t[1] * m;
}
var getNextClock = function(clockTime, resetTime, now) {
var result = now_d = parseInt(now / d, 10) * d + timezone;
now_d_t = now - now_d;
if (now_d_t > resetTime) {
result += d;
}
return result + clockTime;
};
var before = 0,
resetTime = getDayTime('00:00'),
clock24 = getDayTime('10:00');
var tickHandler = function() {
var now = Date.now();
if (now - before > tick_time) {
var nextClock = getNextClock(clock24, resetTime, now);
var diff = nextClock - now;
var floor = Math.floor;
var diif_readable = [
floor(diff / d),
floor((diff % d) / h),
floor((diff % h) / m),
floor((diff % m) / s)
];
console.log(diif_readable);
before = now;
}
};
var handler = setInterval(tickHandler, tick_time/10);
tickHandler();把v-if/v-else改成v-show。
https://jsfiddle.net/s5ar1un3...
我也才發(fā)現(xiàn)有這種坑,原理后面慢慢說。
form.vue
//created階段
created() {
this.$on('el.form.addField', (field) => {
if (field) {
this.fields.push(field);
}
}
this.$on('el.form.removeField', (field) => {
if (field.prop) {
this.fields.splice(this.fields.indexOf(field), 1);
}
});
}
//重置方法
resetFields() {
...
this.fields.forEach(field => {
field.resetField();
});
},
form-item.vue
//mounted階段
mounted() {
if (this.prop) {
this.dispatch('ElForm', 'el.form.addField', [this]);
...
let initialValue = this.fieldValue;
...
Object.defineProperty(this, 'initialValue', {
value: initialValue
});
...
}
}
//重置方法
resetField() {
this.validateDisabled = true;
if (Array.isArray(value)) {
prop.o[prop.k] = [].concat(this.initialValue);
} else {
prop.o[prop.k] = this.initialValue;
}
}
從源碼可以看出,在form-item的mounted階段確定每個field的初始值。
創(chuàng)建階段
由于v-if/v-else,因此text所在組件創(chuàng)建沒有prop(這時候創(chuàng)建了3個item組件,class本身也沒寫prop情況會一樣),因此只有value所在item組件創(chuàng)建的時候觸發(fā)了form組件的el.form.addField事件。所以保存的fields長度為1,僅保存了value這個組件。
選中之后
由于數(shù)據(jù)變動,vue比較差異更新,然后更新了第2個組件(這是重點),然鵝this.initialValue是element-ui定義的值,還是原來value的值。
結(jié)果就是resetField的時候value.initialValue的值賦給了text。
所以resetField千萬別用v-if/v-show除非你確認過上面的邏輯跟你的業(yè)務(wù)邏輯不沖突。測試版本element-ui@2.3.3
以上都是不看文檔的結(jié)果(花式打臉),vue提供了:key阻止組件復(fù)用。Vuejs
Vue 會盡可能高效地渲染元素,通常會復(fù)用已有元素而不是從頭開始渲染。這么做除了使 Vue 變得非??熘?,還有其它一些好處。例如,如果你允許用戶在不同的登錄方式之間切換這樣也不總是符合實際需求,所以 Vue 為你提供了一種方式來表達“這兩個元素是完全獨立的,不要復(fù)用它們”。只需添加一個具有唯一值的 key 屬性即可:
注意如validate組件不存在不驗證一樣,resetField也不reset。
'name'加了引號想達到什么效果呢,這不就是字符串了嗎
可以考慮在相應(yīng)的組件里import這個js,不過Typescript默認是不允許導(dǎo)入js的,要在tsconfig里配置allowjs
vue 寫一個唄,反正不是特別復(fù)雜,組件化搞定
在大陸地區(qū)出現(xiàn)這種情況的,絕大部分是運營商或其代理商投放的 PUSH 廣告,由于你提供的信息太少,這里無法作出準確判斷。
你可以掛上境外 VPN 測試一下,若沒有問題,則 99% 可判定是 PUSH 廣告。
網(wǎng)上有很多解決辦法,常用的如
1.可以的,通過在mounted設(shè)置this.$refs.multipleTable.toggleRowSelection(this.tableData3[0]),this.tableData3[0]為你要設(shè)置行數(shù)的值,
2.如果是多行可以用forEach設(shè)置每一個值
js是沒有權(quán)限的
自己看下es6的繼承吧 先學(xué)基礎(chǔ) 框架不急的
解決了,最后一行多了一行,因為發(fā)現(xiàn)后來的樣式都出問題了,刪掉了最后一行空白行就好了。。。
:active吧, 手指點擊時的效果 話說移動端要個毛的hover啊...
我看了下,感覺是一個懶加載的方式~
如果是的話用 lazyload.js 試試~
"tabBar": {
"color": "#a0a0a0",
"selectedColor": "#07777B",
"backgroundColor": "#fff",
"borderStyle": "white",
"list": [
{
"iconPath": "images/tab_cart.png",
"selectedIconPath": "images/tab_cart_selected.png",
"pagePath": "pages/cart/cart",
"text": "購物車"
},
]
}
media.loop = true;
與map相對應(yīng)的還有reduce,習慣于函數(shù)式編程的人格外喜歡用。比如前端框架React及其生態(tài)系統(tǒng),用map就很多。當然,我只是描述了一下現(xiàn)象,具體的文章https://research.google.com/archive/mapreduce.html
這個屬于劉海屏幕適配問題
因為我也沒有做過相關(guān)項目
但幫你找了點資料
https://aotu.io/notes/2017/11...
https://www.cnblogs.com/lolDr...
https://blog.csdn.net/qq81437...
北大青鳥APTECH成立于1999年。依托北京大學(xué)優(yōu)質(zhì)雄厚的教育資源和背景,秉承“教育改變生活”的發(fā)展理念,致力于培養(yǎng)中國IT技能型緊缺人才,是大數(shù)據(jù)專業(yè)的國家
達內(nèi)教育集團成立于2002年,是一家由留學(xué)海歸創(chuàng)辦的高端職業(yè)教育培訓(xùn)機構(gòu),是中國一站式人才培養(yǎng)平臺、一站式人才輸送平臺。2014年4月3日在美國成功上市,融資1
北大課工場是北京大學(xué)校辦產(chǎn)業(yè)為響應(yīng)國家深化產(chǎn)教融合/校企合作的政策,積極推進“中國制造2025”,實現(xiàn)中華民族偉大復(fù)興的升級產(chǎn)業(yè)鏈。利用北京大學(xué)優(yōu)質(zhì)教育資源及背
博為峰,中國職業(yè)人才培訓(xùn)領(lǐng)域的先行者
曾工作于聯(lián)想擔任系統(tǒng)開發(fā)工程師,曾在博彥科技股份有限公司擔任項目經(jīng)理從事移動互聯(lián)網(wǎng)管理及研發(fā)工作,曾創(chuàng)辦藍懿科技有限責任公司從事總經(jīng)理職務(wù)負責iOS教學(xué)及管理工作。
浪潮集團項目經(jīng)理。精通Java與.NET 技術(shù), 熟練的跨平臺面向?qū)ο箝_發(fā)經(jīng)驗,技術(shù)功底深厚。 授課風格 授課風格清新自然、條理清晰、主次分明、重點難點突出、引人入勝。
精通HTML5和CSS3;Javascript及主流js庫,具有快速界面開發(fā)的能力,對瀏覽器兼容性、前端性能優(yōu)化等有深入理解。精通網(wǎng)頁制作和網(wǎng)頁游戲開發(fā)。
具有10 年的Java 企業(yè)應(yīng)用開發(fā)經(jīng)驗。曾經(jīng)歷任德國Software AG 技術(shù)顧問,美國Dachieve 系統(tǒng)架構(gòu)師,美國AngelEngineers Inc. 系統(tǒng)架構(gòu)師。