2016-11-11 67 views
0

我正在用角度编写商店应用程序,但它不能在浏览器上正确渲染 。我想我错过了一些东西,但我看不到什么:角度应用程序在浏览器上不能正确渲染

我切割了html文件。它只是显示编辑 链接<scripts>的第一行。

我已通过添加<meta charset="utf-8">修复了标点符号。所以现在这些角色正在显示出来。我忘了从angular aplication添加一些其他脚本,但我看不到什么!

it should show titles and images, but it didn't

的index.html

<!DOCTYPE html> 
<html ng-app="gemStore"> 
    <head> 
    <meta charset="utf-8"> 
    <meta http-equiv="X-UA-Compatible" content="IE=edge"> 
    <link rel="stylesheet" type="text/css" href="bootstrap.min.css" /> 
    <script type="text/javascript" src="angular.min.js"></script> 
    <script type="text/javascript" src="app.js"></script> 
    </head> 
    <body class="list-group" ng-controller="StoreController as store"> 
    <header> 
     <h1 class="text-center">Prueba tienda</h1> 
     <h2 class="text-center">_ aplicación con Angular-js _</h1> 
    </header> 
    <div class="list-group-item" ng-repeat = "product in store.products"> 
     <h3> 
     {{product.name}} 
     <em class="pull-right">{{product.price | currency}}</em> 
     </h3> 
<!-- Image gallery --> 
     <div class="gallery" ng-show="product.images.length" 
      ng-controller="GalleryController as gallery"> 
     <img ng-src="{{product.images[gallery.current]}}"> 
     <ul class="list-inline thumbs"> 
      <li class="thumbnail" ng-repeat="image in product.images"> 
      <img ng-src="{{image}}" /> 
      </li> 
     </ul> 
    </div> 

    <section class="tab" ng-controller="TabController as tabber"> 
     <ul class="nav nav-pills"> 
     <li ng-class="{active: tabber.isSet(1)}"> 
      <a href ng-click="tabber.setTab(1)">Description</a></li> 
     <li ng-class="{active: tabber.isSet(2)"}> 
      <a href ng-click="tabber.setTab(2)">Specs</a></li> 
     <li ng-class="{active: tabber.isSet(3)"> 
      <a href ng-click="tabber.setTab(3)">Reviews</a></li> 
     </ul> 

     <!-- Review Tab's content --> 
     <div ng-show="tabber.isSet(1)"> 


     <h4>Description</h4> 
     <blockquote>{{product.description}}</blockquote> 
     </div> 
     <div ng-show="tabber.isSet(2)"> 
     <h4>Specs</h4> 
     <blockquote>Shine: {{product.shine}}</blockquote> 
     </div> 
     <div ng-show="tabber.isSet(3)"> 

     <!-- Product Reviews List--> 
     <ul> 
      <h4>Reviews</h4> 
      <li ng-repeat="review in product.reviews"> 
      <blockquote> 
       <strong>{{review.stars}} Stars</strong> 
       {{review.body}} 
       <cite class"clearfix">-{{review.author}} on {{review.createdOn | date}}</cite> 
      </blockquote> 
      </li> 
     </ul> 

     <!--Review Form --> 
      <form name="reviewForm" 
        ng-controller="ReviewController as reviewCtrl" 
        ng-submit="reviewForm.$valid && reviewCtrl.addReview(product)" novalidate> 
       <!-- Live Preview --> 
       <blockquote> 
       <strong>{{reviewCtrl.review.stars}} Stars</strong> 
       {{reviewCtrl.review.body}} 
       <cite class="clearfix">—{{reviewCtrl.review.author}}</cite> 
       </blockquote> 

       <!-- Review Form --> 
       <h4>Submit a Review</h4> 
       <fieldset class="form-group"> 
       <select ng-model="reviewCtrl.review.stars" class="form-control" 
         ng-options="stars for stars in [5,4,3,2,1]" 
         title="Stars" required > 
        <option value="">Rate the Product</option> 
       </select> 
       </fieldset> 
       <fieldset class="form-group"> 
       <textarea class="form-control" placeholder="Write a short review of the product..." 
          title="Review" ng-model="reviewCtrl.review.body"></textarea> 
       </fieldset> 
       <fieldset class="form-group"> 
       <input ng-model="reviewCtrl.review.author" type="email" class="form-control" 
         placeholder="[email protected]" title="Email" required/> 
       </fieldset> 
       <fieldset class="form-group"> 
       <input type="submit" class="btn btn-primary pull-right" value="Submit Review" 
         {{reviewForm..$valid}}/> 
       </fieldset> 
      </form> 

     </div> 
    </section> 
    </body> 
</html> 

app.js

(function() { 
    var app = angular.module('gemStore'); 

    app.controller('GalleryController', function() { 
    this.current = 0; 

    this.setCurrent = function(value) { 
     this.current = value || 0; 
    }; 
    }); 

    app.controller('StoreController', function() { 
    this.products = gems; 
    }); 

    app.controller('TabController', function() { 
    this.tab = 1; 

    this.setTab = function(selectTab) { 
     this.tab = selectTab; 
    }; 
    this.isSet = function(tabde) { 
     return this.tab == tabde; 
    }; 
    }); 

    app.controller('ReviewController', function() { 
    this.review = {}; 

    this.addReview = function(product) { 
     this.review.createOn = Date.now(); 
     product.reviews.push(this.review); 
     this.review = {}; 
    }; 
}); 

    var gems = [{ 
    name: 'Azurite', 
    description: "Some gems have hidden qualities beyond their luster, beyond their shine... Azurite is one of those gems.", 
    shine: 8, 
    price: 110.50, 
    rarity: 7, 
    color: '#CCC', 
    faces: 14, 
    images: [ 
     "images/gem-02.gif", 
     "images/gem-05.gif", 
     "images/gem-09.gif" 
    ] 
    }, { 
    name: 'Bloodstone', 
    description: "Origin of the Bloodstone is unknown, hence its low value. It has a very high shine and 12 sides, however.", 
    shine: 9, 
    price: 22.90, 
    rarity: 6, 
    color: '#EEE', 
    faces: 12, 
    images: [ 
     "images/gem-01.gif", 
     "images/gem-03.gif", 
     "images/gem-04.gif" 
    ] 
    }, { 
    name: 'Zircon', 
    description: "Zircon is our most coveted and sought after gem. You will pay much to be the proud owner of this gorgeous and high shine gem.", 
    shine: 70, 
    price: 1100, 
    rarity: 2, 
    color: '#000', 
    faces: 6, 
    images: [ 
     "images/gem-06.gif", 
     "images/gem-07.gif", 
     "images/gem-10.gif" 
    ] 
    }]; 
})(); 
+0

你的控制台是否有错误? – Amy

+0

我认为是...让我展示它! – Hell0

+0

'当取消http://cdn.sstatic.net/Sites/stackoverflow/img/favicon.ico?v=4f32ecc8f43d的请求时,因为内部窗口已被销毁或为其加载了新的图标,它已被取消! '和另一个... – Hell0

回答

2

看看你ngapp

<html ng-app="gemStore"> 

,并在你的JavaScript

var app = angular.module('gemstore', ['qrScanner', 'ngRoute']); 

gemstoregemStore,不匹配,

看性格S

犯同样在两地(区分大小写)

demo on JSBin

+0

固定。反正它不是渲染。我尝试删除angular.min.js,它不起作用。 'app.js'文件是我的应用程序! – Hell0

+0

我认为问题在于那种错误的's'。谢谢,我接受了这个回应。 – Hell0

0

只包括一个角JS脚本标签要么min.js或简单的JS文件,但它应该应用之前.js文件。

+0

他是?我没有看到这是如何回答这个问题。 – Amy

+0

哎呀错误的问题回答 – SanchezCool

+0

请检查在var app = angular.module('gemstore',['qrScanner','ngRoute'])中的拼写错误。 宝石 - > S是大写 – SanchezCool

0

模块名称应该有资本“S” 替换var app = angular.module('gemstore', ['qrScanner', 'ngRoute']);var app = angular.module('gemStore', ['qrScanner', 'ngRoute']);

一件事,你不需要换你模块插入自动呼叫功能(function(){}());

+0

我想我必须说thx只是为了回应,但通过添加相同的反应,在这个论坛上的其他成员的问题不会被修复。谢谢! – Hell0

+0

我没有看到回应,否则我不会发布。 –

+0

'抱歉= 1;如果抱歉<1000抱歉++'。谢谢 – Hell0