json动态菜单和路由

json dynamic menu and routing

本文关键字:路由 菜单 动态 json      更新时间:2023-09-26

我会从json文件加载我的menú,并动态添加路由;我尝试了此代码,但不起作用:当我加载此菜单时。。我想用angularjs的ui路由创建动态路由;高级感谢。马可。

setup.js.php

<?php
  session_start();
  $menu = file_get_contents("layout/menu/mymenu.json");
  header("content-type: application/javascript");
 ?>
 angular.module('erp.Setup', []).constant('Setup', {
    username:    '<?php print USER_NAME; ?>',
    menu:      '<?php print $menu; ?>'   <---- Uncaught SyntaxError:   Unexpected token ILLEGAL
 });

我的json:

{
  "menu": {
     "_id": "menu_1",
       "item": [
        {
          "title": "Test item1",
          "subtit": "Subtitle 1",
           "color": "red",
           "icon": "fa-menu",
           "link": "#/m_item1"
        }
       ]
   }
}

对于您的解决方案,我相信'<?php打印$menu>'正在使其成为字符串,因此您需要小心Json的格式设置。

此外,这里还有一个我为测试应用程序创建的示例导航。希望这能帮助你:-

我的指令:-

var todoApp = angular.module("todoApp",[]);
todoApp.directive('ngNavPills',function(){
var dtv={};
dtv.restrict='A';
dtv.replace=true;
dtv.scope={ ngModel:'=' };
dtv.template='<ul class="nav nav-pills"><li ng-repeat="itm in ngModel" role="presentation"><a ng-href="{{itm.link}}">itm.name</a></li></ul>';
dtv.link= function($s,$e,$a){
}
return(dtv);
});

我的导航Json:-

[{"name":"Home","link":"/Index.html"},{"name":"Index2","link":"/Index2.html"},{"name":"Index3","link":"/Index3.html"}]

用法:-

<div ng-nav-pills></div>