在 Visual Studio 2013 中使用 angularjs 材料设计
Posted
技术标签:
【中文标题】在 Visual Studio 2013 中使用 angularjs 材料设计【英文标题】:Using angularjs material design with visual studio 2013 【发布时间】:2015-09-22 05:03:09 【问题描述】:我是 angularjs 材料设计的新手,希望在我的前端实现其丰富的 UI 功能。 VS13 附带安装在创建的模板中的引导程序。我可以将 angularjs material design 与 bootstrap 结合起来,或者自定义 bootstrap 来给我 Material Design 的外观和动画吗?
我创建了新项目并安装了angularjs material design
,将其添加到App_Start
文件夹下的BondleConfig.vb
bundles.Add(New ScriptBundle("~/bundles/angular").Include(
"~/bundles/angular.js",
"~/bundles/angular-animate.js",
"~/bundles/angular-aria.js"))
bundles.Add(New StyleBundle("~/Content/css").Include(
"~/Content/bootstrap.css",
"~/Content/angular-material/angular-material.css",
"~/Content/site.css"))
我可以将class="md-button md-raised"
添加到一个链接中,该链接给了我一个很好的凸起按钮,但我无法将md-primary
添加到它。此外,在 html 标记中使用 <md-button></md-button>
之类的标签会导致 unknown element
错误。
【问题讨论】:
本主题将为您解答您的问题:***.com/questions/27438336/…。 好的,我有新的项目设置,我右键单击解决方案 > 管理 nuget 包 > 搜索“响应式设计”,我看到我安装了 angularjs 材料设计并将其添加到我的 buildConfig 类,但是当我尝试时实现它我得到未知元素 请编辑您的问题并向我们展示您在项目中真正所做的代码部分。谢谢。 可能是您在模块的注入中缺少 ngMaterial 引用...您的 JS 文件和 AngularJS 配置在哪里? 我是 angularjs 的新手,它的材料设计是否有任何教程我可以按照步骤或在 Visual Studio 13 MVC 应用程序罐上正确安装 【参考方案1】:您的包配置看起来不错,只是您忘记在包中包含 angular-material.js。
bundles.Add(New ScriptBundle("~/bundles/angular").Include(
"~/bundles/angular.js",
"~/bundles/angular-animate.js",
"~/bundles/angular-aria.js",
"~/bundles/angular-material.js")) //missing part
bundles.Add(New StyleBundle("~/Content/css").Include(
"~/Content/bootstrap.css",
"~/Content/angular-material/angular-material.css",
"~/Content/site.css"))
您还必须在配置中包含一个 app.js 文件(*)。
您的配置必须有一个模块和控制器。
关键部分是dependency injection。您必须包含 ngMaterial 模块才能使用下载的库... 并且不要忘记包含其他脚本!
//(*) app.js
angular.module('MyApp',['ngMaterial'])
.controller('AppCtrl', function($scope)
$scope.title1 = 'Button';
$scope.title4 = 'Warn';
$scope.isDisabled = true;
$scope.googleUrl = 'http://google.com';
);
.buttondemoBasicUsage section
background: #f7f7f7;
border-radius: 3px;
text-align: center;
margin: 1em;
position: relative !important;
padding-bottom: 10px;
.buttondemoBasicUsage md-content
margin-right: 7px;
.buttondemoBasicUsage section .md-button
margin-top: 16px;
margin-bottom: 16px;
.buttondemoBasicUsage .label
position: absolute;
bottom: 5px;
left: 7px;
font-size: 14px;
opacity: 0.54;
<link href="http://cdn.rawgit.com/angular/bower-material/v0.10.0/angular-material.css" rel="stylesheet"/>
<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="http://cdn.rawgit.com/angular/bower-material/v0.10.0/angular-material.js"></script>
<script src="https://s3-us-west-2.amazonaws.com/s.cdpn.io/t-114/assets-cache.js"></script>
<div ng-controller="AppCtrl" class="buttondemoBasicUsage" ng-app="MyApp">
<md-content>
<section layout="row" layout-sm="column" layout-align="center center">
<md-button>title1</md-button>
<md-button md-no-ink="" class="md-primary">Primary (md-noink)</md-button>
<md-button ng-disabled="true" class="md-primary">Disabled</md-button>
<md-button class="md-warn">title4</md-button>
<div class="label">Flat</div>
</section>
<section layout="row" layout-sm="column" layout-align="center center">
<md-button class="md-raised">Button</md-button>
<md-button class="md-raised md-primary">Primary</md-button>
<md-button ng-disabled="true" class="md-raised md-primary">Disabled</md-button>
<md-button class="md-raised md-warn">Warn</md-button>
<div class="label">Raised</div>
</section>
<section layout="row" layout-sm="column" layout-align="center center">
<md-button ng-href="googleUrl" target="_blank">Default Link</md-button>
<md-button class="md-primary" ng-href="googleUrl" target="_blank">Primary Link</md-button>
<md-button>Default Button</md-button>
<div class="label">Link vs. Button</div>
</section>
<section layout="row" layout-sm="column" layout-align="center center">
<md-button class="md-primary md-hue-1">Primary Hue 1</md-button>
<md-button class="md-warn md-raised md-hue-2">Warn Hue 2</md-button>
<md-button class="md-accent">Accent</md-button>
<md-button class="md-accent md-raised md-hue-1">Accent Hue 1</md-button>
<div class="label">Themed</div>
</section>
</md-content>
</div>
我还关注了这个example,向你展示了它是如何工作的。
我希望现在没事:)
【讨论】:
【参考方案2】:如果有人想知道如何开始使用 Angular Material + MVC 在 vs 中,您可以按照以下步骤操作。 1.在Visual Studioe中创建一个MVC项目。 2.转到 App_Start 文件夹。 3.转到BundleConfig.cs。 4.清除RegisterBundles功能内的所有代码并保存。 5.转到共享文件夹下的_Layout.cshtml文件。 6.替换下面的代码。
<!DOCTYPE html>
<html lang="en" ng-app="BlankApp">
<head>
<meta charset="utf-8" />
<title>@ViewBag.Title</title>
<meta name="viewport" content="width=device-width" />
<link rel="stylesheet" href="//rawgit.com/angular/bower-material/master/angular-material.css">
<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.5.5/angular.min.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.5.5/angular-animate.min.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.5.5/angular-aria.min.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.5.5/angular-messages.min.js"></script>
<!-- Angular Material Library -->
<script src="http://ajax.googleapis.com/ajax/libs/angular_material/1.1.0/angular-material.min.js"></script>
</head>
<body>
<script type="text/javascript">
/**
* You must include the dependency on 'ngMaterial'
*/
angular.module('BlankApp', ['ngMaterial']);
</script>
<div class="wrapper">
<div class="container">
@RenderBody()
</div>
</div>
@RenderSection("scripts", required: false)
</body>
</html>
7.转到 index.cshtml 8.开始使用Angular Material。(示例代码在下面)
@
ViewBag.Title = "Home Page";
<body>
<md-content>
<md-tabs md-dynamic- md-border-bottom="">
<md-tab label="one">
<md-content class="md-padding">
<h1 class="md-display-2">Tab One</h1>
<p>Lorem ipsum dolor sit amet, consectetur.</p>
</md-content>
</md-tab>
<md-tab label="two">
<md-content class="md-padding">
<h1 class="md-display-2">Tab Two</h1>
<p>LNullam malesuada consequat diam, a facilisis tortor volutpat et. Sed urna dolor.</p>
<p>Morbi viverra, ante vel aliquet tincidunt, leo dolor.</p>
<p>Integer turpis finibus commodo lectus.</p>
</md-content>
</md-tab>
<md-tab label="three">
<md-content class="md-padding">
<h1 class="md-display-2">Tab Three</h1>
<p>Integer turpis erat, lectus.</p>
</md-content>
</md-tab>
</md-tabs>
</md-content>
</body>
谢谢, -快乐编码-
【讨论】:
以上是关于在 Visual Studio 2013 中使用 angularjs 材料设计的主要内容,如果未能解决你的问题,请参考以下文章
使用平台工具集 v120 (Visual Studio 2013) 在 Visual Studio 2015 中创建 C++/CLI 项目
Intel parallel studio 2017 集成在visual studio 2013 中,现在如何集成到visual studio 2015
在 Visual Studio 2013 中使用 Roslyn 编译器
在 Visual Studio 2013 中使用 angularjs 材料设计