当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


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。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。