You are viewing an old version of this page. View the current version.
Compare with Current
View Page History
Version 1
Current »
接口作用
用于描述一个web组件所使用的的JS和CSS文件的路径,可以根据客户端的不同,返回不同的文件路径。
接口内容
主要接口
package com.fr.web.struct;
import com.fr.web.struct.browser.RequestClient;
import com.fr.web.struct.category.ScriptPath;
import com.fr.web.struct.category.StylePath;
/**
* web端所用到的原子组件
*/
public interface Atom {
/**
* 该原子组件所使用的javascript脚本
*
* @param req 请求客户端
* @return 脚本路径
*/
ScriptPath script(RequestClient req);
/**
* 该原子组件所使用的css样式表
*
* @param req 请求客户端
* @return css路径
*/
StylePath style(RequestClient req);
/**
* 自身的过滤器,根据这个过滤器决定是否输出到web端
* @return 过滤器
*/
Filter filter();
}
关联接口
package com.fr.web.struct;
public interface Filter {
boolean accept();
}
示例实现片段:
@Override
public Filter filter() {
return new Filter() {
public boolean accept() {
return "com.fr.plugin.decision.theme.original".equals(AppearanceConfig.getInstance().getThemeId());
}
};
}
表示只有id为com.fr.plugin.decision.theme.original的主题插件的的JS和CSS才会输出到浏览器端,其他安装的主题插件使用的JS和CSS都不会输出到浏览器端。
ScriptPath使用参考文档:Atom接口。
StylePath使用参考文档:Atom接口。
注意事项
通常情况,不需要直接实现这个接口,而是继承抽象类:com.fr.web.struct.Component
而如果一个组件是由其他几个Atom组件组合而成的,可以通过继承:com.fr.web.struct.AssembleComponent来描述组合组件。