javascript - Node Angular View 错误

标签 javascript node.js angularjs

我有一个小型 Node 项目,我正在尝试将 angularjs 集成到其中。我有一个使用 ng-controller 和 ng-repeat 的部分 View 。

这是我的 angular.html

<!DOCTYPE html>
<!--[if lt IE 7]>      <html lang="en" ng-app="myApp" class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
<!--[if IE 7]>         <html lang="en" ng-app="myApp" class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 8]>         <html lang="en" ng-app="myApp" class="no-js lt-ie9"> <![endif]-->
<!--[if gt IE 8]><!--> <html lang="en" ng-app="myApp" class="no-js"> <!--<![endif]-->
<head>
  <meta charset="utf-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <title>My AngularJS App</title>
  <meta name="description" content="">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <link rel="stylesheet" href="bower_components/html5-boilerplate/css/normalize.css">
  <link rel="stylesheet" href="bower_components/html5-boilerplate/css/main.css">
  <link rel="stylesheet" href="app.css"/>
  <script src="bower_components/html5-boilerplate/js/vendor/modernizr-2.6.2.min.js"></script>
</head>
<body>
  <ul class="menu">
    <li><a href="#/view1">view1</a></li>
    <li><a href="#/view2">view2</a></li>
    <li><a href="#/view3">view3</a></li>
  </ul>

  <!--[if lt IE 7]>
      <p class="browsehappy">You are using an <strong>outdated</strong> browser. Please <a href="http://browsehappy.com/">upgrade your browser</a> to improve your experience.</p>
  <![endif]-->

  <div ng-view></div>

  <div>Angular seed app: v<span app-version></span></div>

  <!-- In production use:
  <script src="//ajax.googleapis.com/ajax/libs/angularjs/x.x.x/angular.min.js"></script>
  -->
  <script src="bower_components/angular/angular.js"></script>
  <script src="bower_components/angular-route/angular-route.js"></script>
  <script src="app.js"></script>
  <script src="services.js"></script>
  <script src="controllers.js"></script>
  <script src="filters.js"></script>
  <script src="directives.js"></script>
</body>
</html>

partial3.html(这是部分):

      <div ng-controller="PersonCtrl">
        <div ng-repeat="person in persons">
          {{person.last}} , {{person.first}}
      </div>

我只得到 5 个逗号,而个人 Controller 中没有 5 条记录。

  .controller('PersonCtrl', ['$scope', function($scope) {
    $scope.persons = [
        { first: "Henry", middle: "Jacob", last: "Mendocino", gender: "M" },
        { first: "Ann", middle: "Cecilia", last: "Negro", gender: "F" },
        { first: "Berta", middle: "Ann", last: "Sallyfield", gender: "F" },
        { first: "Rudolf", middle: "John", last: "Waters", gender: "M" },
        { first: "Ken", middle: "Adam", last: "Aundry", gender: "M" },
    ]
  }])

这是我的 app.js

'use strict';


    // Declare app level module which depends on filters, and services
    angular.module('myApp', [
      'ngRoute',
      'myApp.filters',
      'myApp.services',
      'myApp.directives',
      'myApp.controllers'
    ]).
    config(['$routeProvider', function($routeProvider) {
      $routeProvider.when('/view1', {templateUrl: 'partials/partial1.html', controller: 'MyCtrl1'});
      $routeProvider.when('/view2', {templateUrl: 'partials/partial2.html', controller: 'MyCtrl2'});
      $routeProvider.when('/view3', {templateUrl: 'partials/partial3.html', controller: 'PersonCtrl'});
      $routeProvider.otherwise({redirectTo: '/view1'});
    }]);

有人可以帮我找出为什么我的数据没有显示吗?

谢谢。

最佳答案

他/她需要安排他/她的文件系统和表达代码以指向正确的位置...最重要的是 - 他/她需要:

app.use(express.static(__dirname + '/views'));

以便应用知道从哪里提供静态内容 (index.html)。

关于javascript - Node Angular View 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24313504/

相关文章:

javascript - 如何检查数组是否至少有一个负值?

node.js - 在服务器上异步运行方法

node.js - Sequelize ORM - 包含两个关系作为单个父属性

javascript - 如何根据元素的文本内容切换 AngularJS 中的可见性?

javascript - 语法错误重复出现的电子邮件时间表

javascript - 在 angularjs 中使用 wijmo 事件日历

php - 在其他端口上使用socket.io

javascript - 检查多个输入之间的重复值并显示错误消息

angularjs - 在 AngularJS 中以 RESTful 方式设置路由的最佳实践

javascript - 下拉菜单未调用 onChange 函数