【问题标题】:Using angularjs material design with visual studio 2013在 Visual Studio 2013 中使用 angularjs 材料设计
【发布时间】: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 错误。

【问题讨论】:

  • 本主题将为您解答您的问题:stackoverflow.com/questions/27438336/…
  • 好的,我有新的项目设置,我右键单击解决方案 > 管理 nuget 包 > 搜索“响应式设计”,我看到我安装了 angularjs 材料设计并将其添加到我的 buildConfig 类,但是当我尝试时实现它我得到未知元素
  • 请编辑您的问题并向我们展示您在项目中真正所做的代码部分。谢谢。
  • 可能是您在模块的注入中缺少 ngMaterial 引用...您的 JS 文件和 AngularJS 配置在哪里?
  • 我是 angularjs 的新手,它的材料设计是否有任何教程我可以按照步骤或在 Visual Studio 13 MVC 应用程序罐上正确安装

标签: asp.net-mvc angularjs twitter-bootstrap angular-material


【解决方案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-height="" 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>
    

    谢谢,
    -快乐编码-

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-04-29
      • 2015-10-14
      • 1970-01-01
      • 1970-01-01
      • 2020-02-09
      • 1970-01-01
      • 1970-01-01
      • 2016-06-15
      相关资源
      最近更新 更多