1

嘿伙计们,我完全按照演示页面显示的内容进行操作,但是当我尝试打开底部工作表时仍然出现此错误。我正在使用 angularjs 1.3.14,并且我也尝试过 1.3.6。此外,我已经按照入门页面上的说明包括 Angular Material 及其依赖项。

HTML(master.html 这是包含所有 js 和 css 库的母版页)

<link rel="stylesheet" href="//ajax.googleapis.com/ajax/libs/angular_material/0.8.2/angular-material.min.css">
<div ng-controller="MasterCtrl">
<body>
<div class="bottom-sheet-demo inset" layout="column" layout-sm="row" layout-align="center">
    <md-button class="md-primary" ng-click="showGridBottomSheet($event)">
      Show as Grid
    </md-button>
  </div>
  <br/>
  <b layout="row" layout-align="center center" layout-margin>
    {{alert}}
  </b>
  <div ng-view=""></div>
</body>
</div>
<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/angularjs/1.3.14/angular.min.js"></script>
<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/angularjs/1.3.14/angular-animate.min.js"></script>
<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/angularjs/1.3.14/angular-aria.min.js"></script>
<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/angularjs/1.3.14/angular-route.min.js"></script>
<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/angularjs/1.3.14/angular-cookies.min.js"></script>
<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/angularjs/1.3.14/angular-sanitize.min.js"></script>
<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/angularjs/1.3.14/angular-messages.min.js"></script>

<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/angular_material/0.8.2/angular-material.js"></script>
<script type="text/javascript" src="/static/javascripts/app.js"></script>
<script type="text/javascript" src="/static/javascripts/controllers.js"></script>

应用程序.js

var app = angular.module('app',['ngMaterial','ngRoute','ngSanitize','ngCookies','ngAnimate']).
 config(['$routeProvider', '$locationProvider', function($routeProvider, $locationProvider) {
    $routeProvider.
      when('/', {
        templateUrl: '/static/views/main.html',
        controller: 'IndexCtrl'
      }).
      when('/signin',{
        templateUrl: '/static/views/signin.html',
        controller: 'SignInCtrl'
      }).
      when('/signup',{
        templateUrl: '/static/views/signup.html',
        controller: 'SignUpCtrl'
      }).
      otherwise({
        templateUrl: '/static/views/error.html'
      });
    $locationProvider.html5Mode({
      enabled: true,
      requireBase: false
    });

  }]);

控制器.js

angular.module('app').controller('MasterCtrl', [
  '$http',
  '$scope',
  '$location',
  '$rootScope',
  '$timeout',
  '$mdBottomSheet',
  function ($http, $scope, $location, $rootScope, $timeout, $mdBottomSheet) {
      $scope.alert = '';
  $scope.showGridBottomSheet = function($event) {
    $scope.alert = '';
    $mdBottomSheet.show({
      templateUrl: 'bottom-sheet-grid-template.html',
      controller: 'GridBottomSheetCtrl',
      targetEvent: $event
    }).then(function(clickedItem) {
      $scope.alert = clickedItem.name + ' clicked!';
    });
  };
  }
]);
angular.module('app').controller('GridBottomSheetCtrl', [
  '$scope',
  '$mdBottomSheet',
  function ($scope,$mdBottomSheet) {
    $scope.items = [
    { name: 'Hangout', icon: 'hangout' },
    { name: 'Mail', icon: 'mail' },
    { name: 'Message', icon: 'message' },
    { name: 'Copy', icon: 'copy' },
    { name: 'Facebook', icon: 'facebook' },
    { name: 'Twitter', icon: 'twitter' },
  ];
  $scope.listItemClick = function($index) {
    var clickedItem = $scope.items[$index];
    $mdBottomSheet.hide(clickedItem);
  };
  }
]);

这是我得到的错误

在此处输入图像描述 在此处输入图像描述

我在这里停留了几天我仍然无法弄清楚我试图切换到非缩小版本的角度材料来调试它但是我没有运气,我不明白为什么,你们中的任何人都可以教我如何调试这种问题?感谢您的帮助谢谢

4

1 回答 1

0

我被困在同样的问题上。我暂时解决了强制element[1]而不是element[0]. 在某些情况下element[0]是文本元素而不是 dom 元素。

于 2015-03-11T23:57:42.963 回答