gpt4 book ai didi

angularjs - meanjs 如何实现管理仪表板

转载 作者:行者123 更新时间:2023-12-01 23:53:41 24 4
gpt4 key购买 nike

meanjs 将 angularjs 用于前端 mvc,并且是一个 SPA 应用程序,因此当管理仪表板与前端页面不同时,实现管理仪表板的最佳方法是什么?也许两个接入点?

最佳答案

我也一直在寻找一种方法来实现这一点,我将搜索结果发布在这里。首先创建您的新模块:

yo meanjs:angular-module admin
yo meanjs:angular-route adminHome
? Which module does this route belongs to? admin
? What do you want your route path to be? admin-home
? What do you want to call your view? admin-home
? What do you want to call your controller? AdminHome
create public/modules/admin/config/admin.client.routes.js
create public/modules/admin/controllers/admin-home.client.controller.js
create public/modules/admin/tests/admin-home.client.controller.test.js
create public/modules/admin/views/admin-home.client.view.html

一旦你这样做了,第一步就是检查你何时继续:http://localhost:3000/#!/admin-home您有效地加载了生成的 View 。然后你去生成你的快速路线和 Controller :

yo meanjs:express-route admin
yo meanjs:express-controller admin

现在乐趣来了。这个想法是告诉 Express 在您点击 /admin

时加载不同的布局 View 集
//Content of app/controllers/admin.server.controller.js
'use strict';

exports.index = function(req, res){
res.render('admin-index', {
user: req.user || null,
request: req
});
};

//Content of app/routes/admin.server.routes.js
'use strict';

module.exports = function(app) {
var admin = require('../../app/controllers/admin.server.controller');
app.route('/admin').get(admin.index);
};

复制/粘贴:

app/views/index.server.view.html -> app/views/admin-index.server.view.html
app/views/layout.server.view.html ->app/views/admin-layout.server.view.html

编辑app/views/admin-index.server.view.html:

{% extends 'admin-layout.server.view.html' %}

{% block content %}
<section data-ui-view></section>
{% endblock %}

编辑app/views/admin-layout.server.view.html:

[...]
{% for jsFile in jsFiles %}<script type="text/javascript" src="/{{jsFile}}"></script>{% endfor %}
[...]

注意 {{jsFile}} 之前的“/”

最后的接触。因为您的浏览器现在正在加载/admin 而不是/您需要告诉 ui-router 模板的路径是绝对路径而不是相对路径。

//Content of public/modules/admin/config/admin.client.routes.js
'use strict';

//Setting up route
angular.module('admin').config(['$stateProvider',
function($stateProvider) {
// Admin state routing
$stateProvider.
state('admin-home', {
url: '/admin-home',
templateUrl: '/modules/admin/views/admin-home.client.view.html'
});
}
]);

注意 templateUrl 内容开头的“/”

现在通过访问 http://localhost:3000/admin/#!/admin-home

测试您的管理区域

关于angularjs - meanjs 如何实现管理仪表板,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25179307/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com