Javascript 如何在EmberJS中显示/隐藏div?
我也在寻找一些关于余烬最佳实践的建议,因为我还没有弄清楚如何处理一般的交互。这里讨论的交互是一个小菜单,当您单击下拉链接时可以切换Javascript 如何在EmberJS中显示/隐藏div?,javascript,ember.js,Javascript,Ember.js,我也在寻找一些关于余烬最佳实践的建议,因为我还没有弄清楚如何处理一般的交互。这里讨论的交互是一个小菜单,当您单击下拉链接时可以切换 export default Ember.Component.extend({ classNames: ['dib'], isClicked: false, actions: { showMenu: function(){ this.toggleProperty('isClicked'); } } }); 我已经为这个
export default Ember.Component.extend({
classNames: ['dib'],
isClicked: false,
actions: {
showMenu: function(){
this.toggleProperty('isClicked');
}
}
});
我已经为这个下拉链接创建了以下组件
export default Ember.Component.extend({
classNames: ['dib'],
isClicked: false,
actions: {
showMenu: function(){
this.toggleProperty('isClicked');
}
}
});
当然,在.hbs文件中,我有如下内容:
{{#if isClicked}}
// Code goes here
{{/if}}
最终结果是:
由于这种方法,我有以下问题
- 我不完全确定如何通过单击框的外部来隐藏该框
- 一旦显示,该框将在多条路线上保持不变
- 是否可以使用此方法附加动画(如淡入淡出)?(我想不会吧)
- 在EmberJS中,这样做是正确的吗
dissertelement
中为此手动附加事件侦听器,或者使用带有操作处理程序的大型不可见div覆盖。
虽然我没有测试过这个,但也有一些
一旦显示,该框将在多条路线上保持不变
为什么不应该呢?如果您移开,使零部件不再可见,则长方体也将不可见。但是,如果您只是在嵌套的插座内进行转换,则会保持该状态
是否可以使用此方法附加动画(如淡入淡出)?(我想不会吧)
结帐
在EmberJS中,这样做是正确的吗
复杂的问题。您可能只需要使用CSS就可以做到这一点。这绝对没有错,所以就这么做吧
问题是在哪里保存这种状态。该组件有一个有限的生命周期,但是如果该生命周期与您的需求一起进行,那么它是好的
它也很容易集成其他插件和类似引导下拉列表的东西,这总是取决于你的喜好
我不完全确定如何通过单击框的外部来隐藏该框
这实际上有点棘手。
您可以在dissertelement
中为此手动附加事件侦听器,或者使用带有操作处理程序的大型不可见div覆盖。
虽然我没有测试过这个,但也有一些
一旦显示,该框将在多条路线上保持不变
为什么不应该呢?如果您移开,使零部件不再可见,则长方体也将不可见。但是,如果您只是在嵌套的插座内进行转换,则会保持该状态
是否可以使用此方法附加动画(如淡入淡出)?(我想不会吧)
结帐
在EmberJS中,这样做是正确的吗
复杂的问题。您可能只需要使用CSS就可以做到这一点。这绝对没有错,所以就这么做吧
问题是在哪里保存这种状态。该组件有一个有限的生命周期,但是如果该生命周期与您的需求一起进行,那么它是好的
集成其他插件和引导下拉列表也很容易,这取决于您的喜好。一些想法:
我不完全确定如何通过单击框的外部来隐藏该框
一旦显示,该框将在多条路线上保持不变
我猜你的意思是,当你点击框中的一个链接时,该框在发送到下一页时仍然可见。这是正常的行为。只需在路由之前或路由时向链接添加操作并关闭元素
是否可以使用此方法附加动画(如淡入淡出)?(我想不会吧)
如果您只需要简单的动画,那么可以使用jquery
toggleAnimation: function(isOpen, section) {
if (isOpen) {
section.slideUp(400);
} else {
section.animate({
height: 'toggle'
}, 400, function() {
section.slideDown(400);
});
}
},
节是一个dom元素
Is this even the correct way to approach something like this in EmberJS?
对。总有其他的方法,但你可以用余烬做一些你期待的事情。一些想法:
我不完全确定如何通过单击框的外部来隐藏该框
一旦显示,该框将在多条路线上保持不变
我猜你的意思是,当你点击框中的一个链接时,该框在发送到下一页时仍然可见。这是正常的行为。只需在路由之前或路由时向链接添加操作并关闭元素
是否可以使用此方法附加动画(如淡入淡出)?(我想不会吧)
如果您只需要简单的动画,那么可以使用jquery
toggleAnimation: function(isOpen, section) {
if (isOpen) {
section.slideUp(400);
} else {
section.animate({
height: 'toggle'
}, 400, function() {
section.slideDown(400);
});
}
},
节是一个dom元素
Is this even the correct way to approach something like this in EmberJS?
对。总有其他的方法,但是你可以用余烬做一些你期望的事情