javascript - Angular JS UI 路由器不工作

标签 javascript html angularjs angularjs-directive angular-ui-router

它不会在 View 中显示任何内容,也不会在控制台日志上显示任何错误。也检查了区分大小写仍然无法解决问题。也看了其他帖子,还是找不到哪里出错了。 UI-Router是否需要使用ng-resource?

    <!DOCTYPE html>
    <html>
    <head>
    <title>Fad Street Den</title>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css">
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.11.4/jquery-ui.min.js"></script>
    <script src="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js"></script>
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.4.0/css/font-awesome.min.css">
    <link rel="stylesheet" type="text/css" href="http://code.jquery.com/ui/1.10.4/themes/ui-lightness/jquery-ui.css">
    <script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/angular-ui-router/1.0.0-alpha.4/angular-ui-router.js"></script>
    <body cz-shortcut-listen="true">
    <div>
    {{name}}
    <div ui-view="header"></div>
    <div ui-view="content"></div>
    </div>
    <script type="text/javascript" src="app.js"></script>
    <script type="text/javascript" src="controller.js"></script>
    <script type="text/javascript" src="services.js"></script>
    </body>
    </html>

App.js 文件

    var app=angular.module('myApp', ['ui.router']);
    .config(function($stateProvider,$urlRouterProvider)
    {
    $stateProvider
    .state('home',
    {
    url:'/',
    views:
    {
    'header':
    {
        templateUrl:"header.html"
    },
    'content':
    {
        templateUrl:"body.html",
        controller:"productscontroller"
    }
    }
    })
    $urlRouterProvider.otherwise('/');  
    })

Controller.js 文件

    var app=angular.module('myApp');
    app.controller('productscontroller', 
    ['$scope','productservice',function($scope,productservice)
    {
    $scope.name="kannan";
    productservice.productlists().then(function(response)
    {
    $scope.ans=response.data;
    console.log($scope.ans);
    },function(response)
    {
    console.log(response.status);
    return response.status;
    });
    }]);

标题.html

   <body ng-app="myApp" ng-controller="productscontroller">
   <ul class="nav navbar-nav">
   <li class="active"><a ui-sref="home">Home</a></li>
   <li><a ui-sref="home">Home</a></li>
   </ul>
   </body>

正文.html

   <body ng-app="myApp" ng-controller="productscontroller">
   <div>
    <div style="height: 200px;" ng-repeat="x in ans">
    <img style="width: 100px;height: 100px;float: left;" class="img-responsive"  
         ng-src="{{x.imageURL1}}">
        <h1>{{x.color}}</h1>
        <p>{{x.brand}}</p>
        <p>{{x.gender}}</p>
    </div>
    </div>
   </body>

最佳答案

我们必须提供ng-app="myApp" 在尽可能的最高根级别。主要在index.html

<body ng-app="myApp" ...

甚至在<html>(例如,能够调整 <title>,它是 <head> 的一部分)

<html ng-app="myApp" ...

header.htmlbody.html (如上所示) 不起作用,因为这不会触发完全申请

关于javascript - Angular JS UI 路由器不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39266283/

相关文章:

javascript - 如何将 JavaScript 对象复制到临时变量中,以便在更改属性后恢复原始对象?

javascript - 如何在模块化设计模式中嵌套函数?

javascript - 根据列表鼠标悬停突出显示表数据

javascript - 带有清除字段按钮的 Angular JS ionic 搜索框

javascript - 带有angularjs的动态菜单栏

javascript - Bootstrap 导航栏品牌无法将文本放在两行上并做出响应

html - 如何在 Chrome 中调整纯 flexbox masonry 网格,它已经在 Firefox 中运行

html - 在 lg 上只有一个 div 作为 xs 分辨率

javascript - Ionic/AngularJS - 没有 Controller 的 state.go

javascript - 如何在 PHP 中访问嵌套数组的变量