列出搜索過的數(shù)據(jù)(類似京東頂部搜索框)

tip: 只要進行數(shù)據(jù)綁定行贪,一定要先檢查是否在app_module.ts中進行過formsModule的數(shù)據(jù)引入,如果沒有進行引入才漆,在數(shù)據(jù)綁定的時候會出現(xiàn)報錯

例一:京東搜索,歷史記錄

html:

    <div>

      <input type="text" [(ngModel)]="keyword">

      <button (click)="dosearch()">搜索</button>

      <ul>

        <li *ngFor="let item of historyList ; let key= index">{{item}}

          <button (click)="deletehistory()">x</button>

        </li>

      </ul>

    </div>

ts中:

    public keyword:string="";

    public historyList:any[]=[];

    dosearch(){

      console.log(this.keyword);

      console.log(this.historyList.indexOf(this.keyword));

      if(this.historyList.indexOf(this.keyword)==-1){

        if(this.keyword !=""){

          this.historyList.push(this.keyword);

          this.keyword="";

        }else{

          console.log("請輸入您要搜索的物品");

        }

      }else{

        console.log("您搜索過此物品");

      }

    }

    deletehistory(key){

      this.historyList.splice(key,1);

    }

解析:

  console.log(this.keyword);獲取輸入框中的值。

  this.historyList.indexOf(this.keyword)==-1 歷史列表中的值是否等于-1

  if(this.historyList.indexOf(this.keyword)==-1){ 判斷歷史列表中的值是否為-1

    如果是-1則褥影,

      if(this.keyword !=""){

·      在判斷輸入框中的值是否為空,不為空咏雌,將輸入框中的值賦值給歷史列表

      this.historyList.push(this.keyword);

      this.keyword="";

      如果為空凡怎,則進行提示

      console.log("請輸入您要搜索的物品");

    如果不為-1,給出提示

    console.log("您搜索過此物品");

刪除數(shù)據(jù)使用splice()屬性;

例二:搜索過的記錄可以互相轉(zhuǎn)換(備忘事件和過期事件)

html:中

   <div>

    <input type="text" [(ngModel)]="keyword" (keyup)="keyUp($event)">

    <h3>待辦事項</h3>

    <ul>

      <li *ngFor="let item of todolist; let key=index" [hidden]="item.status==1">

        <input type="checkbox" [(ngModel)]="item.status">{{item.title}}

        <button type="button" (click)="deletedata()">x</button>

      </li>

    </ul>

    <h3>已辦事項</h3>

    <ul>

      <li *ngFor="let item of todolist; let key=index" [hidden]="item.status==0">

        <input type="checkbox" [(ngModel)]="item.status">{{item.title}}

        <button type="button" (click)="deletedata()">x</button>

      </li>

    </ul>

  </div>


ts:中

public keyword:string="";

  public todolist:any[]=[];


    keyUp(e){

      if(e.keyCode == 13){

      console.log(this.keyword);

      // 先去重

      if(!this.todoListHasKeyWord(this.todolist,this.keyword)){

        this.todolist.push({title:this.keyword,status:0});

        this.keyword="";

      }else{

        console.log("您已經(jīng)搜索過此物品");

      }

    }

   }

  // 封裝去重寫法

   todoListHasKeyWord(todolist:any,keyword:any){

    if(!keyword) return false;

    for(var i=0;i<todolist.length;i++){

      if(todolist[i].title == keyword){

        return true;

      }

    }

    return false;

  }



  deletedata(key){

    this.todolist.splice(key,1);

  }


解析:

  傳入todolist(歷史記錄列表)赊抖,keyword(輸入框中的值)這兩個值進入自定義的函數(shù)中统倒,在接下來進行判斷,因為todolist的title就是輸入框中的值也就是驗證

  todolist.title ==keyword;在todolist(歷史列表中)進行逐個排查 for( var i= 0;i<todolist.length;i++){todolist[i].title==keyword}如果為真氛雪,則就

  返回true(真)房匆,if(!keyword) return false;判斷里面是否存在和keyword相同的值,不存在返回false;

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末报亩,一起剝皮案震驚了整個濱河市坛缕,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌捆昏,老刑警劉巖赚楚,帶你破解...
    沈念sama閱讀 211,042評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異骗卜,居然都是意外死亡宠页,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 89,996評論 2 384
  • 文/潘曉璐 我一進店門寇仓,熙熙樓的掌柜王于貴愁眉苦臉地迎上來举户,“玉大人,你說我怎么就攤上這事遍烦〖筻遥” “怎么了?”我有些...
    開封第一講書人閱讀 156,674評論 0 345
  • 文/不壞的土叔 我叫張陵服猪,是天一觀的道長供填。 經(jīng)常有香客問我拐云,道長,這世上最難降的妖魔是什么近她? 我笑而不...
    開封第一講書人閱讀 56,340評論 1 283
  • 正文 為了忘掉前任叉瘩,我火速辦了婚禮,結(jié)果婚禮上粘捎,老公的妹妹穿的比我還像新娘薇缅。我一直安慰自己,他們只是感情好攒磨,可當我...
    茶點故事閱讀 65,404評論 5 384
  • 文/花漫 我一把揭開白布泳桦。 她就那樣靜靜地躺著,像睡著了一般娩缰。 火紅的嫁衣襯著肌膚如雪灸撰。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,749評論 1 289
  • 那天漆羔,我揣著相機與錄音梧奢,去河邊找鬼狱掂。 笑死演痒,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的趋惨。 我是一名探鬼主播鸟顺,決...
    沈念sama閱讀 38,902評論 3 405
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼器虾!你這毒婦竟也來了讯嫂?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,662評論 0 266
  • 序言:老撾萬榮一對情侶失蹤兆沙,失蹤者是張志新(化名)和其女友劉穎欧芽,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體葛圃,經(jīng)...
    沈念sama閱讀 44,110評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡千扔,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,451評論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了库正。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片曲楚。...
    茶點故事閱讀 38,577評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖褥符,靈堂內(nèi)的尸體忽然破棺而出龙誊,到底是詐尸還是另有隱情,我是刑警寧澤喷楣,帶...
    沈念sama閱讀 34,258評論 4 328
  • 正文 年R本政府宣布趟大,位于F島的核電站鹤树,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏护昧。R本人自食惡果不足惜魂迄,卻給世界環(huán)境...
    茶點故事閱讀 39,848評論 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望惋耙。 院中可真熱鬧捣炬,春花似錦、人聲如沸绽榛。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,726評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽灭美。三九已至推溃,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間届腐,已是汗流浹背铁坎。 一陣腳步聲響...
    開封第一講書人閱讀 31,952評論 1 264
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留犁苏,地道東北人硬萍。 一個月前我還...
    沈念sama閱讀 46,271評論 2 360
  • 正文 我出身青樓,卻偏偏與公主長得像围详,于是被迫代替她去往敵國和親朴乖。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 43,452評論 2 348

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

  • "use strict";function _classCallCheck(e,t){if(!(e instanc...
    久些閱讀 2,028評論 0 2
  • 源站:http://fengyuanchen.github.io/viewer/ 應用: html: 源碼上是正常...
    羊繪霖閱讀 5,482評論 0 2
  • 單例模式 適用場景:可能會在場景中使用到對象助赞,但只有一個實例买羞,加載時并不主動創(chuàng)建,需要時才創(chuàng)建 最常見的單例模式雹食,...
    Obeing閱讀 2,056評論 1 10
  • js簡介 Js是一種基于事件和對象驅(qū)動的解釋性畜普、松散性的語言。 一切皆對象 javascript 布蘭登艾奇 ...
    塔庫納瑪哈哈閱讀 1,198評論 0 2
  • 1.用js實現(xiàn)隨機選取10~100之間的10個數(shù)字群叶,存入一個數(shù)組吃挑,并排序 //要是獲取不重復的,則對隨機數(shù)...
    persistlu閱讀 5,560評論 0 0