2

我正在构建一个使用 AngularJS 的 iOS Phonegap 应用程序。

我有一些ng-includes里面的ng-switch东西,可以根据项目的类别改变一些列表项目的样式。

        <div 
            ng-repeat="i indata"
            ng-include="src='partials/card.html'""
        >
        </div>

partials/card.html文件中,是开关:

<div 
ng-switch on="i.group"
>
<div ng-switch-when="Music">
    <div ng-include="src='partials/card_details/'+i.category+'.html'"
    ></div>
</div>  
<div ng-switch-when="Film"
    ng-include="src='partials/card_details/buy.html'"></div>        
<!-- default, load group -->
<div ng-switch-default ng-include="src='partials/card_details/'+i.group+'.html'"
></div>

这一切都在我的桌面浏览器上的 Chrome 中完美运行,但是当我运行我的 Phonegap 应用程序时,使用与 Chrome 中运行的页面相同的符号链接 www 文件夹,除了switch 语句中的部分内容外,所有内容都会加载。

我在 Xcode 控制台中没有收到任何错误,我尝试将“/”添加到src的开头,因为我在 Phonegap 中的根路径存在问题,但我不明白为什么partials/card.html加载而不是*partials/card_details*

有任何想法吗?

4

2 回答 2

1

这是因为下面一行中的 ng-include 在其末尾有双引号:

   <div 
        ng-repeat="i indata"
        ng-include="src='partials/card.html'""
    >
    </div>
于 2013-03-14T10:49:52.047 回答
0

Try removing the _ (underscore) from the file names. I remember seeing a hint about this.

<div ng-include="src='partials/cardDetails/'+i.category+'.html'"></div>

instead of

<div ng-include="src='partials/card_details/'+i.category+'.html'"></div>

EDIT:

I have also discovered that ng-include is case sensitive when it comes to file names.

于 2014-02-20T11:35:57.027 回答