在 NativeScript 和 Angular2 中获取元素值

2023-12-11

我有一个列表,我想获取列表项的值。

视图如下

<ListView  [items]="myItems" (itemTap)="onItemTap($event)">
<template let-item="item" let-i="index" let-odd="odd" let-even="even">
    <StackLayout [class.odd]="odd" [class.even]="even">
        <Label #myFoo id="grocery-list" [text]='"Value is: " + i'></Label>
    </StackLayout>
</template>

在打字稿中我有以下内容

import { Component,ViewChild,ElementRef } from "@angular/core";
import {topmost} from "ui/frame";
import {ListView} from "ui/list-view";
 export class AppComponent {

 @ViewChild("myFoo") myFooRef: ElementRef;

    public myItems = [];
    constructor() {
          this.myItems.push("1");
          this.myItems.push("2");
          this.myItems.push("3");

   }

    onItemTap(event){

    }
}

我可以执行以下操作来获取值

    onItemTap(event){
    let itemValue = this.myItems[event.index];
     console.log(itemValue);     
    }

这将获取数组中的值。但这只会返回数组中的值。

正如你在视图中看到的,我有字符串Value is附加到该值。

那么我怎样才能访问text被点击的标签的属性。


您可以通过以下方式访问项目模板的视图参数视图。从那时起,我假设您的列表项中将有不同的文本,因此通过绑定(使用 Angular 索引)为每个标签创建唯一的 ID 非常重要。所以你可以执行以下操作:

<ListView  [items]="myItems" (itemTap)="onItemTap($event)">
    <template let-item="item" let-i="index" let-odd="odd" let-even="even">
        <StackLayout [class.odd]="odd" [class.even]="even">
            <Label [id]="'lbl' + i" [text]='"Value is: " + i'></Label>
        </StackLayout>
    </template>
</ListView>

然后在你的项目点击

public onItemTap(args: ItemEventData) {
    console.log("Item Tapped at cell index: " + args.index);
    console.log(args.object); // prints something like ListView(137)
    console.log(args.view); // prints something like StackLayout(265)

    var lbl = <Label>args.view.getViewById("lbl" + args.index);

    console.log(lbl.text); // prints the actual text of the tapped label
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 NativeScript 和 Angular2 中获取元素值 的相关文章

随机推荐

  • R 中选定列的行平均值

    让我们用著名的例子来说明这个问题iris数据集 我需要按行应用选定的函数 但仅在选定的列上应用 示例如下 library tidyverse iris gt mutate at funs scale vars vars c Species
  • 从 SQLite 数据库获取纬度和经度以在 Android MapOverlay 中使用

    如果我将一堆位置的纬度和经度存储在 SQLite 数据库中 我将如何检索这些值并将它们分别放入 OverlayItem 类中以便在 Google 的地图代码中使用 数据库名称 database 表名 place 字段位于place Tabl
  • 显示对象引用的值

    在 C 中 显示对象指针的实际值相当简单 例如 void p new CSomething cout lt lt p 有没有办法在 NET 中做这样的事情 这样做的价值只能是教育性的 例如出于演示目的 例如向学生展示一个值 而不是仅仅比较参
  • 将overlay2存储驱动程序与overlay文件系统结合使用

    Goal 我在 Live CD 中运行 docker 并且我想缓存 docker 构建的结果 主要是为了当我重新启动到此 Live CD 时使用 我的想法是建立一个overlayfs in var lib docker 所以 我有以下内容
  • SWR 挂钩不反映数据库更改

    该组件用于计算部署在 AWS Lambda 上的 Next js 应用程序中页面级别的视图数 function ViewsCounter slug slug string const data useSWR api views slug f
  • PHP摩尔斯电码转换器

    我正在用 PHP 编写一个基本的莫尔斯电码转换器 它可以接受一个字符串并将其转换为莫尔斯电码 它使用关联数组 foreach 循环和for 循环 它可以工作 除了由于某种原因它在每个转换后的字符后输出与 0 等效的莫尔斯电码 我不知道0是从
  • 在 mail.body 中查找“回车符”

    我有这样的邮件 Hello 请注意 我们在 16 点 15 分 已采取的行动 重建等 真挚地 Mr 每封邮件中的操作都会发生变化 我想要的是将操作插入到我的 Excel 中 问题是我不知道如何获得 回车符 我不知道这是否是正确的名称 这就是
  • Volley SSL - 主机名未验证

    我正在开发一个 Android 应用程序 我需要访问 HTTPS 地址 我正在使用 Volley 请求我的数据 但现在我收到此错误com android volley NoConnectionError java io IOExceptio
  • 如何实现JavaFX和非JavaFX交互?

    我已经开始使用 JavaFX 创建一个用于用户交互的窗口 以便在另一个非 JavaFX 程序中使用 我的主程序叫做Abc类 有一个 main 方法 这是一个非 JavaFX 程序 而是普通的 Java 该程序运行一些活动 然后要求用户选择一
  • java使用过多内存

    在我的一个项目中 我不断压缩小数据块 现在我发现jvm随后增长到6GB RAM 常驻 RES RAM 不是共享或虚拟等 然后由于内存不足而死掉 就好像垃圾收集器从未运行过一样 我已经提取了相关代码并将其粘贴在下面 当我运行它 java6 3
  • moment js 中的自定义长日期格式

    有没有办法根据区域设置将自定义格式代码添加到长日期时刻 例如 moment format L 是一种现有格式 它将打印区域设置的长日期 包括年份 但如果我想添加自己的排除年份的格式 如下所示 moment format LTY 它只是打印给
  • 部分专业化消歧优先链的更好模式?

    考虑以下一系列部分专业化 template
  • 根据索引将一个数据帧除以另一个数据帧

    我试图将数据帧的行除以另一个数据帧中的相同索引行 每个数据帧中有相同数量的列 目标是将一个列列表除以另一个列列表 有没有办法在 Pandas 中做到这一点 这是一个示例数据 import pandas as pd import numpy
  • 如何使用 Selenium WebDriver 从隐藏元素读取文本?

    我正在尝试阅读示例字符串1000从隐藏的 div 像这样 div 1000 div 我知道WebElement getText 不适用于 Selenium 2 WebDriver 中的隐藏元素 因此我搜索了解决方案 像这个 显然下面的代码应
  • 在 ggplot2 中的单个图上绘制 3 个变量

    您好 有一个由三个变量组成的实验 我想将它们全部绘制在一个图上 这是我的 df AB lt data frame block c A A A A B B B B familiarity c fam fam unfam unfam prime
  • 4x4 应用程序小部件在平板电脑上被检测为 3x3

    我创建了一个 4x4 appwidget 将 minWidth 和 minHeight 设置为 250dp 如建议的那样 应用程序小部件设计指南 http developer android com guide practices ui g
  • 在 Razor 的 Javascript 中嵌入 Html.ActionLink

    我知道可以在 MVC3 的 Javascript 中嵌入 Html 但我无法让以下内容工作 并且不确定这是否可能 使用 jQuery DataTable 我通过 AJAX 调用来创建新行 然后使用数据表 API 以编程方式添加它 这一切都有
  • 为什么 FederatedAuthentication.WSFederationAuthenticationModule 在 MVC Azure ACS 联合身份验证中为 null?

    我试图将 FederatedAuthentication 与 NET 4 5 MVC 4 和使用自定义服务器端登录页面的主动重定向结合在一起 使用来自的代码this教程 以及来自this代码示例 重定向到我的 AccountControll
  • 如何让 sed 进行非贪婪匹配? [复制]

    这个问题在这里已经有答案了 我似乎无法弄清楚如何为我的 bash 命令行提出正确的正则表达式 这就是我正在做的事情 echo XML Xerces 2 7 0 0 tar gz sed e s 0 9 1 g 这给了我 的输出 XML Xe
  • 在 NativeScript 和 Angular2 中获取元素值

    我有一个列表 我想获取列表项的值 视图如下