Meteor:在管理仪表板路由之前添加 Bootstrap CDN 链接
Meteor: Add Bootstrap CDN links before admin dashboard route
enter code here
我正在为我的应用程序 UI 使用 materializecss
。我也想添加管理包,为此我正在使用 yogiben:admin 包。问题是要使用此管理包,我还必须安装 Bootstrap
packae,但我不能这样做,因为我正在使用 materializecss
进行 UI 工作。
现在我想做一个小技巧,就是在 /admin
路由之前添加 Bootstrap CDN 链接。
有人可以帮我如何添加到 bootstrap cdn 的链接吗?因此,当用户以管理员身份登录并转到 /admin
路由或 /admin/*
时,应加载 bootstrap css 和 javascript。
我正在尝试这样的事情:
Router.route("admin", {
path: AdminDashboard.path('/admin'),
onBeforeAction: function(){
link: {
stylesheet: "https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css"
}
this.next();
}
});
但是上面的代码报错
Error: A route for the path "/admin" already exists by the name of "admin".
没关系。我设法自己做了。如果有人正在寻找解决方案,这里是解决方案。
Router.onAfterAction(function(){
var routeName = Router.current().route.getName();
if ( routeName.indexOf("adminDashboard") == 0 ) {
$("head #injectedBootstrap").remove(); //removes duplicates
$("head").append($("<link rel='stylesheet' id='injectedBootstrap' href='/css/bootstrap.min.css' type='text/css' media='screen' />"));
$("head #injectedBootstrapJs").remove(); //removes duplicates
$("head").append($("<script type='text/javascript' src='/js/bootstrap.min.js'></script>"));
}
});
enter code here
我正在为我的应用程序 UI 使用 materializecss
。我也想添加管理包,为此我正在使用 yogiben:admin 包。问题是要使用此管理包,我还必须安装 Bootstrap
packae,但我不能这样做,因为我正在使用 materializecss
进行 UI 工作。
现在我想做一个小技巧,就是在 /admin
路由之前添加 Bootstrap CDN 链接。
有人可以帮我如何添加到 bootstrap cdn 的链接吗?因此,当用户以管理员身份登录并转到 /admin
路由或 /admin/*
时,应加载 bootstrap css 和 javascript。
我正在尝试这样的事情:
Router.route("admin", {
path: AdminDashboard.path('/admin'),
onBeforeAction: function(){
link: {
stylesheet: "https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css"
}
this.next();
}
});
但是上面的代码报错
Error: A route for the path "/admin" already exists by the name of "admin".
没关系。我设法自己做了。如果有人正在寻找解决方案,这里是解决方案。
Router.onAfterAction(function(){
var routeName = Router.current().route.getName();
if ( routeName.indexOf("adminDashboard") == 0 ) {
$("head #injectedBootstrap").remove(); //removes duplicates
$("head").append($("<link rel='stylesheet' id='injectedBootstrap' href='/css/bootstrap.min.css' type='text/css' media='screen' />"));
$("head #injectedBootstrapJs").remove(); //removes duplicates
$("head").append($("<script type='text/javascript' src='/js/bootstrap.min.js'></script>"));
}
});