Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ember.js/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ember.js 如何从emberjs中的其他元素中删除类_Ember.js - Fatal编程技术网

Ember.js 如何从emberjs中的其他元素中删除类

Ember.js 如何从emberjs中的其他元素中删除类,ember.js,Ember.js,my functions在单击某个元素时切换类名。但它不能从其他元素中删除类名。所以所有的元素现在都在升级。但是每当用户单击一个元素时,它应该有classname其他同级元素必须删除classname怎么做 以下是我的尝试,但不起作用: import Ember from 'ember'; export default Ember.Component.extend({ isSelected : false, deSelectOthers : function(){

my functions在单击某个元素时切换类名。但它不能从其他元素中删除类名。所以所有的元素现在都在升级。但是每当用户单击一个元素时,它应该有
classname
其他同级元素必须删除
classname
怎么做

以下是我的尝试,但不起作用:

import Ember from 'ember';

export default Ember.Component.extend({
    isSelected : false,
    deSelectOthers : function(){
        this.set( "isSelected", false ); //deselecting all before add the class to clicked element
    },

    actions : {
        selectCard : function(card) {
            this.deSelectOthers(); //de select others not works
            this.toggleProperty('isSelected'); // add class to this element only works. how to remove class from other element?
        }
    }
});
更新 我很抱歉对我的要求作了不恰当的描述。我已经使用
jQuery
创建了需求-如何使用
emberjs
实现同样的需求? 以下是

您需要维护selectedIndex/值,并使用if check根据selectedIndex/值更新类

application.hbs

<div class="parent">
  <ul>
  {{#each model as | temp index|}}
    <li class={{if (eq selectedIndex index) 'highlight' }} {{action 'changeSelectedIndex' index}}>{{temp}}</li>
 {{/each}}   
  </ul>
</div>
controllers/application.js

import Ember from 'ember';
export default Ember.Route.extend({
  model(){
    return [1,2,3,4];
  }
});
import Ember from 'ember';
export default Ember.Controller.extend({  
  selectedIndex:undefined,
  actions:{
    changeSelectedIndex(index){
      this.set('selectedIndex',index);
    }
  }
});

你需要通过运行
ember install-ember-truth-helpers来安装ember-truth-helpers插件

请提供,因为它缺少用于识别问题的重要代码请保存我的代码,你能告诉我一个方法吗?请参考此,它看起来与你的要求相匹配…它是3小时前编写的!!我没有切换类,只是添加了一个类。我需要你澄清这个问题,你是对的。但在组件的情况下,该逻辑不起作用。除非我没有重新单击组件,否则类不会移除检查将在组件中实现。您看到了吗?