Angular ng-repeat 和 ng-show 用于从 JSON 中提取个人数据
Angular ng-repeat and ng-show for pulling individual data from JSON
我有一个旋转木马,想显示通过唯一代码从我的 JSON 文件中提取数据的三个项目的标题和描述。可以用ng-show表示'if this equals code01 then display the other data for that item'吗?我已经编写了一些我认为应该有效但无效的代码。
<div id="slider-carousel" class="carousel slide" data-ride="carousel">
<ol class="carousel-indicators">
<li data-target="#slider-carousel" data-slide-to="0" class="active"></li>
<li data-target="#slider-carousel" data-slide-to="1"></li>
<li data-target="#slider-carousel" data-slide-to="2"></li>
</ol>
<div ng-repeat="product in store.products">
<div class="carousel-inner">
<div class="item active">
<div ng-show="product.code === code01">
<h1><product-title></product-title></h1>
<p><product-description></product-description> </p>
</div>
</div>
<div class="item">
<div ng-show="product.code === code02">
<h1><product-title></product-title></h1>
<p><product-description></product-description> </p>
</div>
</div>
<div class="item">
<div ng-show="product.code === code03">
<h1><product-title></product-title></h1>
<p><product-description></product-description> </p>
</div>
</div>
</div>
</div>
<a href="#slider-carousel" class="left control-carousel hidden-xs" data-slide="prev">
<i class="icon icon-arrow-circle-left"></i>
</a>
<a href="#slider-carousel" class="right control-carousel hidden-xs" data-slide="next">
<i class="icon icon-arrow-circle-right"></i>
</a>
</div>
非常感谢
首先让我吃惊的是您的 ng-show 语句中 'codes' 周围缺少引号。尝试:
ng-show="product.code === 'code01'"
这样您就可以将 product.code 与字符串 'code01'.
进行比较
除此之外,我注意到您也可以清理一些东西。以下html重复三次(每个'code'一次):
<div ng-show="product.code === code01">
<h1><product-title></product-title></h1>
<p><product-description></product-description> </p>
</div>
您可以在 ng-show
中使用布尔表达式,因此您可以将每个代码编写一次,而不是单独的 html 块:
<div ng-show="product.code === 'code01' || product.code === 'code02' || product.code === 'code03'">
<h1><product-title></product-title></h1>
<p><product-description></product-description> </p>
</div>
您需要在 ng-show 的值周围加上引号,因此:
ng-show="product.code === 'code01'"
应该可以。
我有一个旋转木马,想显示通过唯一代码从我的 JSON 文件中提取数据的三个项目的标题和描述。可以用ng-show表示'if this equals code01 then display the other data for that item'吗?我已经编写了一些我认为应该有效但无效的代码。
<div id="slider-carousel" class="carousel slide" data-ride="carousel">
<ol class="carousel-indicators">
<li data-target="#slider-carousel" data-slide-to="0" class="active"></li>
<li data-target="#slider-carousel" data-slide-to="1"></li>
<li data-target="#slider-carousel" data-slide-to="2"></li>
</ol>
<div ng-repeat="product in store.products">
<div class="carousel-inner">
<div class="item active">
<div ng-show="product.code === code01">
<h1><product-title></product-title></h1>
<p><product-description></product-description> </p>
</div>
</div>
<div class="item">
<div ng-show="product.code === code02">
<h1><product-title></product-title></h1>
<p><product-description></product-description> </p>
</div>
</div>
<div class="item">
<div ng-show="product.code === code03">
<h1><product-title></product-title></h1>
<p><product-description></product-description> </p>
</div>
</div>
</div>
</div>
<a href="#slider-carousel" class="left control-carousel hidden-xs" data-slide="prev">
<i class="icon icon-arrow-circle-left"></i>
</a>
<a href="#slider-carousel" class="right control-carousel hidden-xs" data-slide="next">
<i class="icon icon-arrow-circle-right"></i>
</a>
</div>
非常感谢
首先让我吃惊的是您的 ng-show 语句中 'codes' 周围缺少引号。尝试:
ng-show="product.code === 'code01'"
这样您就可以将 product.code 与字符串 'code01'.
进行比较除此之外,我注意到您也可以清理一些东西。以下html重复三次(每个'code'一次):
<div ng-show="product.code === code01">
<h1><product-title></product-title></h1>
<p><product-description></product-description> </p>
</div>
您可以在 ng-show
中使用布尔表达式,因此您可以将每个代码编写一次,而不是单独的 html 块:
<div ng-show="product.code === 'code01' || product.code === 'code02' || product.code === 'code03'">
<h1><product-title></product-title></h1>
<p><product-description></product-description> </p>
</div>
您需要在 ng-show 的值周围加上引号,因此:
ng-show="product.code === 'code01'"
应该可以。