Хотите получить контент из базы данных в виде ссылки на пункты меню, где пункты меню вызываются с помощью AngularJs (ng-repeat) динамически - PullRequest
0 голосов
/ 12 февраля 2019

Я хочу добавить ссылку на пункты меню, которые динамически вызываются из базы данных с помощью AngularJ.

Пожалуйста, проверьте мой код, тогда только вы поймете, За что я борюсь.

Невозможно напрямую добавить ссылки, используя <href>.

. До сих пор я успешно завершил выборку меню и подменю динамически из базы данных, и он отображается без каких-либо ошибок.,

Здесь я показываю свой код, пожалуйста, проверьте:

HTML

<!DOCTYPE html>
<html>
<head>


<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.9/angular.min.js"></script> 

<script type="text/javascript" src="<?php echo base_url();?>Assets/js/angular_app.js" ></script>

<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>

<script src="https://cdnjs.cloudflare.com/ajax/libs/angular-ui-router/0.2.15/angular-ui-router.js" >
</script>

<script 
type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.0/angular-route.js"></script>



<link rel="stylesheet" type="text/css" href="<?php echo base_url(); ?>Assets/css/angularmenu.css" />  


</head>

<div ng-app="menuApp">
<div ng-controller="menuController">
     <div id="wrapper1" class="container">
       <div id="nav1">
       <div><span></span> </div>
             <ul>
                <li ng-repeat="menu in menus" ng-class="{'has-children': (menu.post_title ==='News')}" ng-click="changeClass(menu)" >


                  <a>{{menu.post_title}}</a>

                  <ul ng-if="menu && (menu.post_title ==='News')" ng-controller="subController">

                   <li ng-repeat="submenu in submenus" class="has-children" ng-controller="subController">


                      <a href="{{submenu.post_content}}">{{submenu.post_title}}<span ></span></a></a>

                          <ul ng-if="submenu" ng-class="submenu.class">
                          <li ng-repeat="subsubmenu in submenu.menus">

                              <a href="#">{{subsubmenu.title}}</a>
                            </li>
                          </ul>
                    </li>

                  </ul>
                </li>
              </ul>
        </div>
    </div>
    </div>
  </body>

приложение.js

var app = angular.module('menuApp', []);

  app.controller("menuController", function($scope,$http)
  {
    var baseUrl = 'http://localhost:8080/samplepage/';
    $http.get(baseUrl+'Home/getmenu').then(function(response)
    {    
    console.log(response);
    $scope.menus = response.data;
});

});

  app.controller("subController", function($scope,$http)
  {
    var baseUrl = 'http://localhost:8080/samplepage/';
    $http.get(baseUrl+ 'Home/getsubmenu').then(function(response)
    {
        console.log(response);
        $scope.submenus = response.data;
    });
  });

РЕЗУЛЬТАТ

The result

Проблема заключается в добавлении ссылок на все эти пункты меню, как это возможно с помощью angularJs.

Я искал уже несколько недель и, похоже, не продвинулся дальше.Любые предложения будут с благодарностью.

1 Ответ

0 голосов
/ 12 февраля 2019

Я предлагаю вам использовать routerLink вместо href,

<!-- Exemple -->

<li ng-repeat="subsubmenu in submenu.menus">
  <a [routerLink]="subsubmenu.link">{{subsubmenu.title}}</a>
</li>

Надеюсь, это поможет вам.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...