我是AngularJS世界的新手。但是,我希望实现material design version of AngularJS来创建表单。
所以我按照入门指示尝试做某事,但它看起来不像网站上的那个。所以,我复制了basic demo from Codepen
我认为我添加了所有必要的文件。 但是我仍然无法在Codepen上看起来像那样。 我很确定它有一些CSS问题,但我无法指出它。
以下是我的代码:
angular
.module('MyApp')
.controller('DemoCtrl', function($scope) {
$scope.user = {
title: 'Developer',
email: 'ipsum@lorem.com',
firstName: '',
lastName: '',
company: 'Google',
address: '1600 Amphitheatre Pkwy',
city: 'Mountain View',
state: 'CA',
biography: 'Loves kittens, snowboarding, and can type at 130 WPM.\n\nAnd rumor has it she bouldered up Castle Craig!',
postalCode: '94043'
};
})
.config(function($mdThemingProvider) {
// Configure a dark theme with primary foreground yellow
$mdThemingProvider.theme('docs-dark', 'default')
.primaryPalette('yellow')
.dark();
});
<link rel="stylesheet" href="https://cdn.rawgit.com/angular/bower-material/v0.9.7/angular-material.css">
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.3.15/angular.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.3.15/angular-animate.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.3.15/angular-route.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.3.15/angular-aria.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.3.15/angular-messages.min.js"></script>
<script src="https://cdn.rawgit.com/angular/bower-material/v0.9.7/angular-material.js"></script>
<div ng-controller="DemoCtrl" layout="column" class="inputdemoBasicUsage" ng-app="MyApp">
<md-content md-theme="docs-dark" layout-padding="" layout="row" layout-sm="column">
<md-input-container>
<label>Title</label>
<input ng-model="user.title">
</md-input-container>
<md-input-container>
<label>Email</label>
<input ng-model="user.email" type="email">
</md-input-container>
</md-content>
<md-content layout-padding="">
<form name="userForm">
<div layout="" layout-sm="column">
<md-input-container style="width:80%">
<label>Company (Disabled)</label>
<input ng-model="user.company" disabled="">
</md-input-container>
<md-input-container flex="">
<label>Submission Date</label>
<input type="date" ng-model="user.submissionDate">
</md-input-container>
</div>
<div layout="" layout-sm="column">
<md-input-container flex="">
<label>First name</label>
<input ng-model="user.firstName">
</md-input-container>
<md-input-container flex="">
<label>Last Name</label>
<input ng-model="theMax">
</md-input-container>
</div>
<md-input-container flex="">
<label>Address</label>
<input ng-model="user.address">
</md-input-container>
<md-input-container md-no-float="">
<input ng-model="user.address2" placeholder="Address 2">
</md-input-container>
<div layout="" layout-sm="column">
<md-input-container flex="">
<label>City</label>
<input ng-model="user.city">
</md-input-container>
<md-input-container flex="">
<label>State</label>
<input ng-model="user.state">
</md-input-container>
<md-input-container flex="">
<label>Postal Code</label>
<input ng-model="user.postalCode">
</md-input-container>
</div>
<md-input-container flex="">
<label>Biography</label>
<textarea ng-model="user.biography" columns="1" md-maxlength="150"></textarea>
</md-input-container>
</form>
</md-content>
</div>
感谢任何帮助。谢谢!
答案 0 :(得分:10)
您需要将依赖项注入您的应用中,例如.module(&#39; MyApp&#39;,[&#39; ngMaterial&#39;]),并确保ngMaterial的js已加载到您的应用中index.html的。只需重写&#34; .module(&#39; MyApp&#39;,[&#39; ngMaterial&#39;])&#34;在codepen似乎做了伎俩