我会从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>