Class ember模板中的动态类
我从Angular毕业后就开始使用Ember.js,我正在尝试和学习不同的框架。 有人能给我解释一下如何在一个Ember模板中创建动态类吗? 我读过文件,但我必须说对我来说还是有点模糊 这就是我想做的:Class ember模板中的动态类,class,templates,dynamic,ember.js,view,Class,Templates,Dynamic,Ember.js,View,我从Angular毕业后就开始使用Ember.js,我正在尝试和学习不同的框架。 有人能给我解释一下如何在一个Ember模板中创建动态类吗? 我读过文件,但我必须说对我来说还是有点模糊 这就是我想做的: <div class="myClass-{{id}}></div> 其中{id}}等同于json中的项id。 我不知道它是否有帮助,但我经常使用该模板的余烬视图 谢谢你的时间和回答 我不知道你为什么要这样做,不管怎样,这个“可以”通过普通的{{bind attr}}助手
<div class="myClass-{{id}}></div>
其中{id}}等同于json中的项id。
我不知道它是否有帮助,但我经常使用该模板的余烬视图
谢谢你的时间和回答 我不知道你为什么要这样做,不管怎样,这个“可以”通过普通的{{bind attr}}助手工作 如果该属性已加载,则可以通过管线中的模型挂钩或setUpController挂钩填充该属性 模型挂钩:
model: function(){
return {someProperty: 'class-' + id}; //where ever id is coming from
}
设置控制器挂钩:
setupController: function(controller, model){
controller.set('someProperty', 'class-' + id); //where ever id is coming from
}
编辑
在您的视图中:
didInsertElement: function(){
var _scope = this;
var cb = function(){
_scope.get('controller').set('someProperty', 'class-' + id);
}
//set up jquery countdown
}
为了安全起见,如果您在jquery中执行一些倒计时触发器,它将不会进入Ember的运行循环,所以您可能会看到一些奇怪的行为。考虑使用run详细的查找{{bnAd}}},出于好奇:为什么使用动态生成的类而不是提供的唯一元素元素,即HTML元素ID?看起来您想要识别HTML元素,通过id查找它比通过类查找要快得多。。。你有没有共享同一id的元素?@herom:没有,我没有共享同一id的元素。我之所以想这样做,但可能我想的方式不对:因为我必须用jquery触发倒计时。由于时间因页面而异,因此我将使用特定的类触发每个调用。但是,是的,身份证也很好,正如你提到的,更好。谢谢,我会试试这个解决方案。仅供参考,我想这样做是因为我必须在视图中使用didInsertElement的jquery触发倒计时。由于时间因页面而异,因此我将使用特定的类触发每个调用。
setupController: function(controller, model){
controller.set('someProperty', 'class-' + id); //where ever id is coming from
}
didInsertElement: function(){
var _scope = this;
var cb = function(){
_scope.get('controller').set('someProperty', 'class-' + id);
}
//set up jquery countdown
}