Browse Source

KERNEL-8279 feat:嵌套路由可以渲染到子层级

es6
Guyi 3 years ago
parent
commit
c71ea4c6bc
  1. 26
      demo/app.js
  2. 3
      dist/router.js

26
demo/app.js

@ -40,7 +40,7 @@ BI.$(function () {
height: 100
}, {
type: "bi.router_view",
name: 'home',
name: 'tool-buttons',
deps: 1
}]
});
@ -49,12 +49,6 @@ BI.$(function () {
path: '',
components: {
default: function () {
return Promise.resolve({
type: "bi.label",
text: 'default'
});
},
home: function () {
return Promise.resolve({
type: "bi.label",
text: 'home'
@ -73,11 +67,19 @@ BI.$(function () {
}, {
name: 'tables',
path: 'tables/:id',
component: function () {
return Promise.resolve({
type: "bi.label",
text: 'tables'
});
components: {
default: function () {
return Promise.resolve({
type: "bi.label",
text: 'table-view'
});
},
"tool-buttons": function () {
return Promise.resolve({
type: "bi.label",
text: '预览按钮',
});
},
}
}]
}];

3
dist/router.js vendored

@ -3147,6 +3147,7 @@
BI.RouterView = BI.inherit(BI.Widget, {
props: {
baseCls: 'bi-router-view',
deps: 0,
name: 'default'
},
@ -3168,6 +3169,8 @@
self.tab.setSelect(matchedPath || "/");
}
});
// "bi.router_view"是由"bi.tab"实现的,cardCreator是一个异步过程,在"bi.router_view"创建之前,cbs里不会有创建子组件的方法,在初始化路由时,没法直接渲染到子组件,所以这里手动加了一次调用
this._callbackListener();
},
render: function () {
var self = this, o = this.options;

Loading…
Cancel
Save