有必要捕获加载对象,组件组件
It is necessary to catch the load object, component ember
我想在组件中创建一个下拉菜单。动作列表取决于对象的类型,但对象是不加载的。对不起我的英语
首先调用函数,然后进行Ajax加载,相反
var set_context_menu = function(model, jqobj) {
console.log(' node.type:'+model.get('type'));
}
App.CompNodeComponent = Ember.Component.extend({
didInsertElement: function() {
var node = this.get('node'); // model
var jqobj = this.$().first(); // jquery object
if(node.get('isLoaded')){
set_context_menu(node, jqobj);
}else{
// Ember.addObserver(this, 'type', this, set_context_menu(node, jqobj));
// Ember.RSVP.Promise.resolve(node.get('data')).then(function(chartData) {
// set_context_menu(chartData, jqobj);
// });
// Ember.onLoad(node, function() {
// node.on('ready', set_context_menu(node, jqobj));
// });
// Ember.addListener(node, 'load', node, set_context_menu(node, jqobj));
//node.ready(set_context_menu(node, jqobj));
}
},
Console:
node.type:undefined
ajax [object Object] // ajax to server from "node"
<script type="text/x-handlebars" data-template-name="template">
{{#each node in model}}
{{comp-node node=node}}
{{/each}}
</script>
我也有类似的问题,我的数据处于规范状态,我构建了一个函数并在this.data.isFulfilled
上添加了一个观察者
那么试试:
dataFulfilled: function() {
var node = this.get('node'); // model
var jqobj = this.$().first(); // jquery object
set_context_menu(node, jqobj);
}.observes('this.data.isFulfilled'),
相关文章:
- 将ember对象的数组从ember组件传递到模板
- 带有内置图像对象的Canvas组件构造函数;t显示's图像
- 我不知道如何正确地将REST响应对象传递给ReactJS子组件
- 聚合物+流星,在火焰#每个循环中,无法将对象传递到聚合物网组件
- Angular 2,在没有直接关系的两个组件之间共享一个对象
- 访问要在 React Native Text 组件中显示的对象数组
- Reactjs:在修改对象之前,是否需要复制处于组件状态的对象
- 将类对象传递给ReactJS组件
- 如何获取 Ember 组件对象内部承诺成功或错误回调
- 测试使用 jQuery 和窗口对象的 React 组件
- <对象>中的 SVG 不会显示在 IE 的 Angular 2 组件中
- Angular 2 和谷歌地图 API.从组件操作映射的对象
- 将对象存储在 React 组件的状态中
- IE11 运行时错误: 429 ActiveX 组件无法创建对象
- 将对象从Javascript传递到基于C++/CX接口的C++/CX-Windows运行时组件
- Fluxx或将通量对象传递给子组件
- 未捕获的错误:不变冲突:元素类型无效:需要字符串(对于内置组件)或类/函数,但得到:对象
- Angular2/TypeScript&HTTP:如何将对象附加到组件
- 使用columnToggler获取toggleEvent中的列组件对象
- 是 d3 的可重用组件对象