2016-09-05 26 views
0

將md-sidenav放入自定義指令/組件內時,渲染器無法正常工作,sidenav沒有完整的高度。指令/組件內的md-sidenav未正確顯示

我注意到的奇怪的事情是,如果我們刪除角度應用程序的ngMaterial依賴項,它工作正常。

在這裏看到一個例子:http://codepen.io/captainyouz/pen/NRPpov

的index.html

<html> 
    <head> 
    <title>MD Demo</title> 
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/angular-material/1.1.1/angular-material.min.css" /> 
    </head> 

    <body ng-app="md-example"> 
    <sidenav></sidenav> 

    <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.5.8/angular.js"></script> 
    <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.5.8/angular-animate.min.js"></script> 
    <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.5.8/angular-aria.min.js"></script> 
    <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/angular-material/1.1.1/angular-material.min.js"></script> 
    </body> 
</html> 

app.js

angular.module('md-example', ['ngMaterial']); 

angular.module('md-example').component('sidenav', { 
    template: ` 
    <md-sidenav class="md-whiteframe-2dp" md-component-id="left-side-nav" md-is-locked-open="$mdMedia('gt-md')"> 
     This is a sidenav 
    </md-sidenav> 
    ` 
}); 

回答

0

在這裏你去 - CodePen

標記

<body ng-app="md-example"> 
    <div layout="column" layout-fill> 
     <sidenav flex layout="row"></sidenav> 
    </div> 

這跟在examples in the docs之後。