wip: New react container route for solo panels that supports both angular and react panels

This commit is contained in:
Torkel Ödegaard
2019-01-31 09:44:12 +01:00
parent aafd4a339a
commit 6a4777eafc
5 changed files with 122 additions and 6 deletions

View File

@@ -18,6 +18,8 @@ function WrapInProvider(store, Component, props) {
export function reactContainer(
$route,
$location,
$injector,
$rootScope,
contextSrv: ContextSrv
) {
return {
@@ -38,7 +40,11 @@ export function reactContainer(
component = component.default;
}
const props = { };
const props = {
$injector: $injector,
$rootScope: $rootScope,
$scope: scope,
};
ReactDOM.render(WrapInProvider(store, component, props), elem[0]);

View File

@@ -19,6 +19,7 @@ import UsersListPage from 'app/features/users/UsersListPage';
import DataSourceDashboards from 'app/features/datasources/DataSourceDashboards';
import DataSourceSettingsPage from '../features/datasources/settings/DataSourceSettingsPage';
import OrgDetailsPage from '../features/org/OrgDetailsPage';
import SoloPanelPage from '../features/dashboard/containers/SoloPanelPage';
import config from 'app/core/config';
/** @ngInject */
@@ -51,10 +52,11 @@ export function setupAngularRoutes($routeProvider, $locationProvider) {
pageClass: 'page-dashboard',
})
.when('/d-solo/:uid/:slug', {
templateUrl: 'public/app/features/panel/partials/soloPanel.html',
controller: 'SoloPanelCtrl',
reloadOnSearch: false,
pageClass: 'page-dashboard',
template: '<react-container />',
pageClass: 'dashboard-solo',
resolve: {
component: () => SoloPanelPage,
},
})
.when('/dashboard-solo/:type/:slug', {
templateUrl: 'public/app/features/panel/partials/soloPanel.html',