1.创建承载二开新页面的目录:
点击ecode顶部的加号进行新建根目录;
新建好的根目录排列在最后,可以右键置顶;
2.新建文件夹
3.新建注入文件喝其他相关文件:例如:coms,styles等等
这时候文件夹右键发布并将register注入文件前置加载就可以在页面中实时观看效果了
4.新写页面的注入文件(register)示例
//注册和绑定新页面前端实现接口
ecodeSDK.rewriteRouteQueue.push({
fn:(params)=>{
const {Com,Route,nextState} = params;
const cpParams = {
path:'main/cs/app', //路由地址
appId:'${appId}',
name:'knowBase', //具体页面应用id
node:'app', //渲染的路由节点,这里渲染的是app这个节点
Route,
nextState
}
if(ecodeSDK.checkPath(cpParams)) {
const acParams = {
appId:cpParams.appId,
name:cpParams.name, //模块名称
props:params, //参数
isPage:true, //是否是路由页面
noCss:true //是否禁止单独加载css,通常为了减少css数量,css默认前置加载
}
//异步加载模块${appId}下的子模块pageSimple
return ecodeSDK.getAsyncCom(acParams);
}
return null;
},
order:10,
desc:'Demo简单页面'
});
// 在门户菜单中配置路由地址:/main/cs/app/bc0bc35fbf92419eb03cdd62041dbc0f_knowBase
// 单独访问地址:/spa/custom/static/index.html#/main/cs/app/bc0bc35fbf92419eb03cdd62041dbc0f_knowBase
5.组件关联注入文件
关键代码:ecodeSDK.setCom('${appId}','knowBase',Root);
const KnowBase = ecodeSDK.imp(KnowBase);
const knowledgeBasePageStore = ecodeSDK.imp(knowledgeBasePageStore);
class Root extends React.Component {
render() {
return (
<div>
<KnowBase { ...this.props } knowledgeBasePageStore={knowledgeBasePageStore} />
</div>
);
}
}
ecodeSDK.setCom('${appId}','knowBase',Root);
这样就可以通过地址进行新写页面的访问了
注:
1.文件要发布
2.注入js文件要前置加载
3.appid通过右键查看文件的属性获取