zoukankan      html  css  js  c++  java
  • EXTJS7 解决无法绑定父组件ViewModel问题

    子组件vm(VIewModel)初始化时会自动将父组件的vm设置为parent
    如果子组件的vm初始化时子组件v(View)尚未add到父组件v上,则子组件的vm.parent为null且不会在view add后再设置为父组件vm(只读),此时子组件元素无法绑定到父组件vm

    Ext.defaine('a',{
    	controller: {	
    		// Ext.create后会调用此函数
    		init: function(v){
    			// 此操作会触发vm初始化,导致vm在未完成b.add(a)时就初始化,vm.parent: null,不建议在此处操作VM
    			var store = v.getViewModel().getStore();
    		},
    		// viewModel初始化后会调用此函数,vm会延迟到被使用时才初始化,例如绑定数据的组件渲染后加载数据,此时组件父子关系一般已经建立
    		initViewModel: function(vm){
    			// 建议对vm的操作放到此处避免vm被提前初始化
    		}
    	},
    	viewModel: {
    		stores:{
    			store1:{}
    		}
    	}
    });
    
    var a = Ext.create('a');
    b.add(a);
    
    
  • 相关阅读:
    爱奇艺首页导航轮播特效
    闭包的应用
    时间日期Date类型
    php连接数据库
    封装cookie.js、EventUtil.js、
    时间日期格式
    mysql数据库修改密码
    jquery选择器的使用
    用js完成blog项目
    Hibternate框架笔记
  • 原文地址:https://www.cnblogs.com/luguojun/p/14294769.html
Copyright © 2011-2022 走看看