OperaMasks中的资源处理
OperaMasks作为一个表现层框架,那么其属于对于资源机制的处理是每一个表现层框架必须处理的。
OperaMasks使用了EXT作为展现层的js支撑,其布局组件的资源渲染出的代码如下:
?
?
//将每一个组件所包含的getDependedJSPackages和getDependedCSSPackages中的资源 //写入到ComponentResource中rm.consumeResourceRegister(context, viewRoot); // 若组件的渲染类实现了ResourceRenderer,此方法被执行,一般用于注入若干资源,如: // ComponentResource.getResourceInstance(rm).addInitScript(getActionURLVarDefinition(context, component)); rm.consumeInitScriptBegin(context, viewRoot);// 新机制 // 此处处理资源管理器中的资源,每一个标志了@Container的渲染器在这里被调用,rm.consumeContainerResources(context, viewRoot); // 由于上一方法已经调用了容器类的渲染,当么当前方法则只将容器类的渲染过滤掉rm.consumeResources(context, viewRoot); // 与rm.consumeInitScriptBegin(context, viewRoot);对应,这里调的initScriptEnd rm.consumeInitScriptEnd(context, viewRoot);// 新机制 // 这里开始渲染资源信息 rm.encodeBegin(context);