1 | require([
|
2 | 'jquery',
|
3 | 'knockout',
|
4 | 'director',
|
5 | 'polyfill',
|
6 | 'bdtpl',
|
7 | 'text!js/menumgr/menulist.html'
|
8 | ], function($, ko) {
|
9 | var layoutDom = require('text!js/menumgr/menulist.html');
|
10 | var MenuList = baidu.template(layoutDom);
|
11 | var nodeNames = {};
|
12 | window.addRouter = function(path, func) {
|
13 | var pos = path.indexOf('/:');
|
14 | var truePath = path;
|
15 | if (pos != -1)
|
16 | truePath = path.substring(0, pos);
|
17 | func = func || function() {
|
18 | document.getElementById("navTag").innerText = nodeNames["#" + path];
|
19 | var params = arguments;
|
20 | initPage('pages/' + truePath, params);
|
21 | }
|
22 | var tmparray = truePath.split("/");
|
23 | if (tmparray[1] in router.routes && tmparray[2] in router.routes[tmparray[1]] && tmparray[3] in router.routes[tmparray[1]][tmparray[2]]) {
|
24 | return;
|
25 | } else {
|
26 | router.on(path, func);
|
27 | }
|
28 | }
|
29 |
|
30 | window.router = Router();
|
31 | window.ko=ko;
|
32 | window.$ = $;
|
33 | ctx="/iuap_product_boot";
|
34 | fdfsread_server="172.16.50.238";
|
35 | maxUploadSize=102400;
|
36 | $(function() {
|
37 | initMenu();
|
38 | })
|
39 |
|
40 |
|
41 | function initPage(p, id) {
|
42 | var module = p;
|
43 |
|
44 | var content = document.getElementById("content");
|
45 | require([module], function(module) {
|
46 | ko.cleanNode(content);
|
47 | content.innerHTML = "";
|
48 | module.init(content);
|
49 | })
|
50 | }
|
51 |
|
52 |
|
53 | function initMenu(){
|
54 | var menuTreeList = ctx+"/menumgr/menuList";
|
55 | $.ajax({
|
56 | url: menuTreeList,
|
57 | type: 'GET',
|
58 | dataType: 'json',
|
59 | contentType: 'application/json',
|
60 | success: function (result) {
|
61 | if (result.status) {
|
62 | for (var i = 0; i < result.data.length; i++) {
|
63 | node = result.data[i];
|
64 | nodeNames[node.funcId] = node.name;
|
65 | }
|
66 |
|
67 | $('#menuarea').empty().append(MenuList({data: result.data}));
|
68 |
|
69 | $('#menu').find("a").each(function() {
|
70 | var path = this.hash.replace('#', '');
|
71 | addRouter(path);
|
72 | });
|
73 | window.router.init();
|
74 | } else {
|
75 | result.msg ? alert(result.msg) : '';
|
76 | }
|
77 | },
|
78 | error: function (e) {
|
79 | alert(e.message || "网络请求失败");
|
80 | }
|
81 | });
|
82 | }
|
83 | })
|