gpt4 book ai didi

javascript - Angular ng-show 表达式引用 html 内容

转载 作者:行者123 更新时间:2023-11-30 17:11:58 26 4
gpt4 key购买 nike

我正在尝试格式化缺少组件的地址,例如

{{name}}<br/>
{{street}}<br/>
{{cityStateZip}}<br/>

编辑 - 我的“街头”表达实际上可能是这样的:

{{address.number}} {{address.street}} {{address.apartment}}<br ng-show="address.number && address.number.trim().length>0 && address.street && address.street.trim().length > 0"

等等。

有些地址部分是可选的,比如有些地址没有街道。对于那些,我不想换行。我想我可以做到这一点:

{{street}}<br ng-show="street.length == 0"/>

但是,street 的表达式可能更复杂(如 number 和 street),它可能未定义或可能是空字符串。结果,所有这些 ng-show 表达式将变得又长又冗余。

所以我真正想要的是引用标签内容的显示表达式,例如:

<span ng-show="thisTagsContents.length>0">{{some expression}}<br/><span>

...其中,如果存在,“thisTagsContents”相当于“某些表达式”的渲染输出。我是否必须为此制定自己的指令,或者是否已经 Angular 帮助?或者也许我完全以错误的方式思考它?

谢谢。

最佳答案

      <span ng-show="some_expression.length>0">{{some_expression}}<br/><span>

您可以使用 .length 作为表达式,例如:

      <span>{{some_expression.length}}<br/><span>
// This will show the character length of your expression

{{}} 中的每个输出都有一个长度属性,因为这是 Javascript,在 javascript 中,对象在其原型(prototype)中有一个长度属性所以你可以根据那个对象的长度使用你的 ng-show

关于javascript - Angular ng-show 表达式引用 html 内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26807087/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com