AngularJS / Ionic Framework - 为什么我的一个模板值没有被替换
AngularJS / Ionic Framework - Why are one of my template values not being replaced?
所以我最近一直在玩Ionic Framework(和Angular,通过扩展) - 但我遇到了一个障碍。
本质上,我希望能够使用模型在应用程序底部定义选项卡。
这是我到目前为止所拥有的:
选项卡.html
<div ng-repeat="tab in tabs">
<ion-tab title="{{tab.title}}" icon-off="{{tab.icon}}" icon-on="{{tab.iconon}}" href="{{tab.link}}">
<ion-nav-view name="{{tab.controller}}"></ion-nav-view>
</ion-tab>
</div>
控制器.js
$scope.tabs = [
{
title:'Home',
icon:'ion-ios7-pulse',
iconon:'ion-ios7-pulse-strong',
link:'#/tab/dash',
controller:'tab-dash'
}
]
ion-tab元素中的所有内容都可以正常工作并替换得很好,但是ion-nav-view元素中的{{tab.controller}}则不能。
我尝试重新排列元素以查看它是否对替换的内容产生影响,但事实并非如此 - 无论顺序如何,离子选项卡属性都会被模板引擎替换,但离子导航视图属性不会。
它不仅仅是"控制器"哈希,{{tab.title}} 在 ion-nav-view 元素中存在时同样不会被替换 - 此外,{{tab.controller}} 在 ion-tab 元素中工作。
我注意到的主要事情是,当应用程序提供给浏览器时,"离子导航视图"的 DOM 与我在编辑器中观察到的有所不同 - 这表明它可能正在做一些幕后魔术。我认为也许这种魔力导致元素中的 Angular 标签由于某种原因无法解析/检测/覆盖。
如果是这种情况,有没有办法强制 Angular 在任何其他 JavaScript 发生之前进行模板化 - 如果没有,有人知道这里发生了什么吗?我有点难倒了。
提前致谢:)
修复了它。
事实证明,这是设计使然 - 根据Ionic团队的说法,将视图模型名称设置为动态会导致问题。我通过手动指定我想使用的每个选项卡并引用模型中每个选项卡的相应字段来解决此问题。
不是干的,不是优雅的 - 但功能齐全。
相关文章:
- 我如何找到一个句子中的所有空格并替换忽略它们
- 在DOM中查找一个模式并替换它's的内容使用jquery
- 指令的模板必须只有一个根元素:With restrict E&替换true
- 是否可以仅通过jQuery将图像替换为用户动态选择的另一个图像
- 替换另一个变量对象中的变量值
- 用jQuery将字符串从一个类替换为另一个类
- 只要存在,就用另一个元素替换一个元素
- Javascript/jQuery替换tamil语言输入框中的最后一个单词
- 使用javascript替换字符串中除第一个和最后一个之外的所有字符
- 制作一个chrome扩展,替换css和js元素
- 任何编写文本文件并将其替换为上一个文本文件的方法
- 如何替换字符串中最后一个出现的变量
- 在JavaScript中,如何用一个字符替换字符串中的所有字母
- 替换字符串的下一个匹配项
- 用另一个替换现有图像
- on单击用多个值中的一个替换img src路径的/sgment/
- 根据用户的操作或按钮点击,用另一个替换子反应组件
- 将这些字符中的任何一个替换为任何内容:“”
- 检测一个特定的html实体字符并用另一个替换它
- 如何用另一个替换整个 CSS 文本