一弥锄、品牌案例的添加丧靡、刪除、搜索

1.源碼

<!DOCTYPE html>

<html>

<head>

<meta charset="utf-8">

<script src="vue.js"></script>

<link rel="stylesheet" href="./lib/boot-strap.css" />

<title>品牌案例</title>

</head>

<body>

<div id="app">

<div class="panel panel-primary">

<div class="panel-heading">

<h3 class="panel-title">品牌案例</h3>

</div>

<div class="panel-body form-inline" >

<label>

Id: &nbsp

<input type="text" class="form-control" v-model="id"/>

</label>

<label>

Name: &nbsp

<input type="text" class="form-control" v-model="name" @keyup.enter="add()"

/>&nbsp

</label>

<label>

<input type="button"? value="添加" class="btn btn-primary "

@click="add()"/>

</label>

<label>

搜索名稱關(guān)鍵字:

<input type="text" class="form-control" v-model="keywords"/>

</label>

</div>

</div>

<table class="table table-hover table-bordered table-striped">

<thead>

<tr>

<th>Id</th>

<th>Name</th>

<th>Ctime</th>

<th>Operation</th>

</tr>

</thead>

<tbody>

<tr v-for="item in search(keywords)" :key="item.id">

<th>{{item.id}}</th>

<th>{{item.name}}</th>

<th>{{item.ctime | dataFormat}}</th>

<td>

<a href="" @click.prevent="del(item.id)">刪除</a>

</td>

</tr>

</tbody>

</table>

</div>

</div>

<script>

Vue.filter('dataFormat',function(dateStr,pattern=""){

var dt = new Date(dateStr)

var year = dt.getFullYear()

var month = (dt.getMonth() + 1).toString().padStart(2,'0')

var day = dt.getDate().toString().padStart(2,'0')

if(pattern.toLowerCase() === 'yyy-mm-dd'){

return `${year}-${month}-${day}`

}else{

var hour = dt.getHours().toString().padStart(2,'0')

var monent = dt.getMinutes().toString().padStart(2,'0')

var seconds = dt.getSeconds().toString().padStart(2,'0')

return `${year}-${month}-${day} ${hour}:${monent}:${seconds}`

}

})

var vm = new Vue({

el:'#app',

data:{

id:'',

name:'',

keywords:'',

list:[

{id:1,name:'奔馳',ctime:new Date() },

{id:2,name:'寶馬',ctime:new Date() }

],

},

methods:{

add(){

// console.log('ok')

this.list.push({id:this.id,name:this.name,ctime:new Date()})

this.id = this.name = ' '

},

del(id){

var index = this.list.findIndex(item =>{

if(item.id == id)

return true;

})

this.list.splice(index,1)

},

search(keywords){

/*var newList = []? ? 用forEach()方法

this.list.forEach(item => {

if(item.name.indexOf(keywords) != -1) {

newList.push(item)

}

})

return newList*/?

return this.list.filter(item =>{ //用includes() 方法

if(item.name.includes(keywords)){

return item

}

})

}

}

});

</script>

</body>

</html>



2.成果



3.技術(shù)點(diǎn)

(1)添加案例方法 add():

add(){

// console.log('ok')

this.list.push({id:this.id,name:this.name,ctime:new Date()})

this.id = this.name = ' '

},

(2)刪除案例方法 del():

del(id){

var index = this.list.findIndex(item =>{

if(item.id == id)

return true;

})

this.list.splice(index,1)

},

(3)搜索案例方法forEach()和?用includes()?

search(keywords){

/*var newList = []? ? 用forEach()方法

this.list.forEach(item => {

if(item.name.indexOf(keywords) != -1) {

newList.push(item)

}

})

return newList*/?

return this.list.filter(item =>{ //用includes() 方法

if(item.name.includes(keywords)){

return item

}

})

}



PS:

????需要再次復(fù)習(xí)splice(元素1籽暇,元素2)函數(shù)的用法温治,用于刪除或添加案例,其中元素1為刪除/添加的起點(diǎn)戒悠,元素2為添加/刪除個(gè)數(shù)必須是數(shù)字熬荆,但可以是 "0"。如果未規(guī)定此參數(shù)绸狐,則刪除從 index 開始到原數(shù)組結(jié)尾的所有元素卤恳。?



????用forEach()方法,需要遍歷item中的name是否與搜索的相同寒矿,如果不同突琳,則返回值-1,繼續(xù)遍歷符相。若相同拆融,則返回值!=-1啊终,重新new一個(gè)list镜豹,push進(jìn)去成為新的對(duì)象顯示,搜索成功蓝牲。

? ? 用includes() 方法趟脂,即通過關(guān)鍵序號(hào)keywords進(jìn)行遍歷,若查詢的與name相同例衍,則直接返回該item并返回顯示昔期,搜索成功已卸。


? ? 可以用@keyup.enter="函數(shù)()"方法去變更按鍵修飾符,可根據(jù)需要將enter改為所想要的按鍵的ascii碼即可镇眷。
????<input type="text" class="form-control" v-model="name" @keyup.enter="add()"

/>

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末咬最,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子欠动,更是在濱河造成了極大的恐慌永乌,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,546評(píng)論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件具伍,死亡現(xiàn)場離奇詭異翅雏,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)人芽,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,224評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門望几,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人萤厅,你說我怎么就攤上這事橄抹。” “怎么了惕味?”我有些...
    開封第一講書人閱讀 164,911評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵楼誓,是天一觀的道長。 經(jīng)常有香客問我名挥,道長疟羹,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,737評(píng)論 1 294
  • 正文 為了忘掉前任禀倔,我火速辦了婚禮榄融,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘救湖。我一直安慰自己愧杯,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,753評(píng)論 6 392
  • 文/花漫 我一把揭開白布鞋既。 她就那樣靜靜地躺著民效,像睡著了一般。 火紅的嫁衣襯著肌膚如雪涛救。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,598評(píng)論 1 305
  • 那天业扒,我揣著相機(jī)與錄音检吆,去河邊找鬼。 笑死程储,一個(gè)胖子當(dāng)著我的面吹牛蹭沛,可吹牛的內(nèi)容都是我干的臂寝。 我是一名探鬼主播,決...
    沈念sama閱讀 40,338評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼摊灭,長吁一口氣:“原來是場噩夢啊……” “哼咆贬!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起帚呼,我...
    開封第一講書人閱讀 39,249評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤掏缎,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后煤杀,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體眷蜈,經(jīng)...
    沈念sama閱讀 45,696評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,888評(píng)論 3 336
  • 正文 我和宋清朗相戀三年沈自,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了酌儒。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,013評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡枯途,死狀恐怖忌怎,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情酪夷,我是刑警寧澤榴啸,帶...
    沈念sama閱讀 35,731評(píng)論 5 346
  • 正文 年R本政府宣布,位于F島的核電站捶索,受9級(jí)特大地震影響插掂,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜腥例,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,348評(píng)論 3 330
  • 文/蒙蒙 一辅甥、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧燎竖,春花似錦璃弄、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,929評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至纤掸,卻和暖如春脐供,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背借跪。 一陣腳步聲響...
    開封第一講書人閱讀 33,048評(píng)論 1 270
  • 我被黑心中介騙來泰國打工政己, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人掏愁。 一個(gè)月前我還...
    沈念sama閱讀 48,203評(píng)論 3 370
  • 正文 我出身青樓歇由,卻偏偏與公主長得像卵牍,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子沦泌,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,960評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容