當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Embeer.js EmberArray isEvery()用法及代碼示例


Ember.js 是一個開源 JavaScript 框架,用於開發基於 Model-View-Controller (MVC) 架構的大型客戶端 Web 應用程序。 Ember.js是使用最廣泛的前端應用框架之一。它的目的是加速開發並提高生產力。目前,它被大量網站使用,包括 Square、Discourse、Groupon、Linked In、Live Nation、Twitch 和 Chipotle。

isEvery() 方法用於檢查數組中的所有項目是否具有所需的值。

用法:

isEvery( key, value );

參數:

  • key: 這是我們要檢查的屬性名稱。
  • value: 這是要測試的值。默認值是true。

返回:如果對於數組中的所有項目,傳遞的屬性解析為所需的值,則為 True。

要運行以下示例,您需要有一個 ember 項目。要創建一個,您需要先安裝ember-cli。在終端中寫入以下代碼:

npm install ember-cli

現在您可以通過輸入以下代碼來創建項目:

ember new <project-name> --lang en

要啟動服務器,請鍵入:

ember serve

示例 1:鍵入以下代碼以生成本示例的路由:

ember generate route isEvery1

應用程序/路線/isEvery1.js


import Route from '@ember/routing/route'; 
  
class student { 
    name = null; 
    gender = null; 
    class = null; 
    grade = null; 
    constructor(name, gender, class, grade) { 
        this.name = name; 
        this.gender = gender; 
        this.class = class; 
        this.grade = grade 
    } 
  
    show_grade() { 
        return `I am ${this.name} of  
        Class ${this.class} Get ${this.grade}`; 
    } 
} 
  
export default class StudentsRoute 
    extends Route { 
    students =  
    [new student('Aakash', 'M', 10, 'A',), 
    new student('Soniya', 'F', 8, 'C'), 
    new student('Esnoor', 'M', 9, 'C'), 
    new student('Isha', 'F', 11, 'B',), 
    new student('Doman', 'M', 12, 'B'), 
    new student('Lolu', 'M', 10, 'A'), 
    new student('Satyam', 'M', 10, 'A'), 
    ]; 
    temp2; 
    temp; 
    model() { 
        return this.students; 
    } 
    setupController(controller, model) { 
        super.setupController(controller, model); 
        controller.set('students', this.students); 
        controller.set('temp', this.temp); 
        controller.set('temp1', this.temp1); 
        controller.set('temp2', this.temp2); 
    } 
}

應用程序/控製器/isEvery1.js


import Ember from 'ember'; 
import { mapBy } from '@ember/array'; 
  
export default Ember.Controller.extend({ 
    actions: { 
        Every_Pass() { 
            let ans =  
            this.students.isEvery('grade', 'F'); 
            ans ? alert(`All Student Doesn't pass in Exam`) :  
            alert('All Student pass in Exam'); 
        }, 
        Every_Female() { 
            let ans =  
            this.students.isEvery('gender', 'F'); 
            ans ? alert(`All Student are Female`) :  
            alert('All Student are not Female'); 
        }, 
        Every_male() { 
            let ans =  
            this.students.isEvery('gender', 'M'); 
            ans ? alert(`All Student are male`) :  
            alert('All Student are not Male'); 
        }, 
  
    }, 
});

應用程序/模板/isEvery1.hbs


{ { page - title "Student" } } 
<h3>List of Students: </h3> 
<br /><br /> 
<table> 
    <tr> 
        <th>Name</th> 
        <th>Gender </th> 
        <th>Class </th> 
        <th>Grade </th> 
    </tr> 
    {{#each @model as |detail|}} 
    <tr> 
        <td>{{detail.name}}</td> 
        <td> {{detail.gender}}</td> 
        <td>{{detail.class}}</td> 
        <td>{{detail.grade}}</td> 
    </tr> 
    {{/each}} 
</table> 
  
<br/> 
<br/> 
<div> 
    <input type="button"
           id="check-pass" 
           value="Is Every One Pass" 
           {{action 'Every_Pass' }} /> 
</div> 
<br/> 
<div> 
    <input type="button"
           id="check-female" 
           value="Is All Student Female" 
           {{action 'Every_Female' }} /> 
</div> 
<br/> 
<div> 
    <input type="button"
           id="check-male" 
           value="Is All Student male" 
           {{action 'Every_male' }} /> 
</div> 
{ { outlet } }

輸出:訪問localhost:4200/isEvery1查看輸出

Ember.js EmberArray isEvery 方法

示例 2:鍵入以下代碼以生成本示例的路由:

ember generate route isEvery2

應用程序/路線/isEvery2.js


import Route from '@ember/routing/route'; 
import { } from '@ember/array'; 
  
export default class FruitsRoute 
    extends Route { 
    item1 = [ 
        { 
            name: 'Apple', 
            isFruit: true, 
            color: 'red', 
        }, 
        { 
            name: 'Grapes', 
            isFruit: true, 
            color: 'green', 
        }, 
        { 
            name: 'Mango', 
            isFruit: true, 
            color: 'yellow', 
        }, 
        { 
            name: 'Watermelon', 
            isFruit: true, 
            color: 'red', 
        }, 
        { 
            name: 'Orange', 
            isFruit: true, 
            color: 'orange', 
        }, 
        { 
            name: 'Lady Finger', 
            isFruit: false, 
            color: 'green', 
        }, 
        { 
            name: 'Brinjal', 
            isFruit: false, 
            color: 'purple', 
        }, 
        { 
            name: 'Potato', 
            isFruit: false, 
            color: 'brown', 
        }, 
        { 
            name: 'Onion', 
            isFruit: false, 
            color: 'violet', 
        }, 
    ]; 
    model() { 
        return this.item1; 
    } 
    setupController(controller, model) { 
        super.setupController(controller, model); 
        controller.set('item1', this.item1); 
    } 
}

應用程序/控製器/isEvery2.js


import Ember from 'ember'; 
import { removeAt, unshiftObjects, objectAt, 
        uniqBy, find } from '@ember/array'; 
  
export default Ember.Controller.extend({ 
    actions: { 
        removeDetails(start, end) { 
            this.item1.removeAt(start, end); 
        }, 
        All_fruit() { 
            let foo =  
            this.item1.isEvery('isFruit'); 
            foo ? alert(`Yes all Item are Fruit`) 
            : alert(`There is some other items`) 
        }, 
        Any_Vegy() { 
            let foo =  
            this.item1.isAny('isFruit', false); 
            foo ? alert(`Yes It contains Vegetable also`) 
            : alert(`There is No Vegetable in list`) 
        }, 
    }, 
}); 

應用程序/模板/isEvery2.hbs


{{page-title "Fruits"}} 
<table style=" border-spacing : 30px"> 
<h3>Here is a list 1: </h3> 
<ul> 
    {{#each @model as |eatable|}} 
    <li>{{eatable.name}}</li> 
    {{/each}} 
</ul> 
</table> 
<div> 
    <label>Enter Start Index: </label> 
    {{input value=this.start}} 
</div> 
<div> 
    <label>Enter End Index: </label> 
    {{input value=this.end}} 
</div> 
<div> 
    <input type="button" id="remove-details"
        value="Remove Details"
        {{action 'removeDetails'
        this.start this.end}} /> 
</div> 
<br /><br /> 
<input type="button" id="all-Fruit"
    value="All item are Fruits"
    {{action 'All_fruit' }} /> 
  
<br /><br /> 
<input type="button" id="any-vegy"
    value="Any item are Vegetables"
    {{action 'Any_Vegy' }} /> 
  
{{outlet}}

輸出:訪問 localhost:4200/isEvery2 查看輸出

Ember.js EmberArray isEvery 方法

參考:https://api.emberjs.com/ember/4.6/classes/EmberArray/methods/isEvery?anchor=isEvery



相關用法


注:本文由純淨天空篩選整理自satyam00so大神的英文原創作品 Ember.js EmberArray isEvery() Method。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。