繁体   English   中英

如何为Nullable 3d Json数据动态设置和获取NgModel

How to set and get NgModel dynamically for a Nullable 3d Json data

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

我正在尝试使用[[ngModel)]获取/设置HTML输入的值,如果我的对象已经存在于我的json中,Evrything可以在我的2d Json级别甚至是3d Json级别上正常工作。 但是,当我的3d对象为NULL时,我不能再使用双重绑定了。 所以我要分离我的NgModel(要读取的[ngModel]和要设置的(ngModelChange)),这是我的问题,我无法设置未定义的对象。 因为我的3d对象的结构不存在。

我试图创建一个具有子Model属性的Model,但是即使我拥有Model,他也无法设置我的属性。

  • 这是我的WebApi的回复:
"Data": {
    "Entreprise": {
      "PostalAddressSameAsCorrespondence": false,
      "ID_Entreprise": 3374,
      "Prefixe": null,
      "Suffixe": null,
      "ID_EntrepriseParent": null,
      "ID_EntrepriseParentIcriq": null,
      "TypeEntrepriseLookup": "ENSE",
      "EntrepriseSaisonniere": "N",
      ...
      "TelephonePrincipal": {
        "ID_Telephone": 716,
        "ID_Entreprise": 374,
        "ID_Contact": null,
        "TypeTelephoneLookup": "PRI",
        "NumeroTelephone": "999-328-4200",
        "Poste": null,
        "DateCreation": "2017-03-29T15:27:04",
        "CodeUsagerCreation": "ASDQQ",
        "DateModification": null,
        "CodeUsagerModification": null
      },
      "TelephoneSecondaire": null
}
  • 这就是我如何在2D级别读取和设置值
<div class="md-form">
                  <input type="text" id="nomLegalFrancais" class="form-control" mdbInput mdbValidate
                    [(ngModel)]="entrepriseModel.NomLegalFrancais" formControlName="nomLegalFrancais">
                  <label for="nomLegalFrancais">Nom légal français *</label>
                  <mdb-error *ngIf="nomLegalFrancais.invalid && (nomLegalFrancais.dirty || nomLegalFrancais.touched)">
                    Entrée invalide</mdb-error>
                  <mdb-success *ngIf="nomLegalFrancais.valid && (nomLegalFrancais.dirty || nomLegalFrancais.touched)">
                    Entrée valide</mdb-success>
                </div>

  • 这就是我尝试在3d级别读取和设置值的方式(例如TelephoneSecondaire)
<!-- Telephone sans frais -->
                  <div class="col-md-6 col-sm-6">
                    <div class="md-form form-group">
                      <input id="telephoneSansFrais" mdbInput mdbValidate type="text" class="form-control"
                        [ngModel]="entrepriseModel?.TelephoneSansFrais?.NumeroTelephone"
                        (ngModelChange)="entrepriseModel.TelephoneSansFrais?.NumeroTelephone = $event"
                        [textMask]="{mask: phoneSansFraisMask}" formControlName="telephoneSansFrais"> <!-- Setter (ngModelChange) NOT WORKING -->
                      <label for="telephoneSansFrais">Téléphone sans frais</label>
                    </div>
                  </div>
  • Entreprise.model.ts:
export class Entreprise {

  public ID_Entreprise: number;
  public Prefixe: string;
  public Suffixe: string;
  public ID_EntrepriseParent: number;
  public ID_EntrepriseParentIcriq: number;
  public NomLegalFrancais: string;
  ...
  public TelephonePrincipal: Telephone;
  public TelephoneSansFrais: Telephone; 

  deserialize(input: any): this {
    Object.assign(this, input.Data.Entreprise);
    return this;
  }
}

export class Telephone implements {
  public ID_Telephone: number;
  public ID_Entreprise: number;
  public ID_Contact: number;
  public TypeTelephoneLookup: string;
  public NumeroTelephone: string;
  public Poste: string;
  public DateCreation: string;
  public CodeUsagerCreation: string;
  public DateModification: string;
  public CodeUsagerModification: string; 
}

我希望得到这样的json:

使用动态对象:

"Data": {
    "Entreprise": {
      "PostalAddressSameAsCorrespondence": false,
      "ID_Entreprise": 3374,
      "Prefixe": null,
      "Suffixe": null,
      "ID_EntrepriseParent": null,
      "ID_EntrepriseParentIcriq": null,
      "TypeEntrepriseLookup": "ENSE",
      "EntrepriseSaisonniere": "N",
      ...
      "TelephonePrincipal": {
        "ID_Telephone": 716,
        "ID_Entreprise": 374,
        "ID_Contact": null,
        "TypeTelephoneLookup": "PRI",
        "NumeroTelephone": "999-328-4200",
        "Poste": null,
        "DateCreation": "2017-03-29T15:27:04",
        "CodeUsagerCreation": "ASDQQ",
        "DateModification": null,
        "CodeUsagerModification": null
      },
      "TelephoneSecondaire": {
        "NumeroTelephone": "123-465-999", <!-- my input id="telephoneSansFrais" value -->
      }
}

或者如果我使用我的“电话”类,则为:

"Data": {
    "Entreprise": {
      "PostalAddressSameAsCorrespondence": false,
      "ID_Entreprise": 3374,
      "Prefixe": null,
      "Suffixe": null,
      "ID_EntrepriseParent": null,
      "ID_EntrepriseParentIcriq": null,
      "TypeEntrepriseLookup": "ENSE",
      "EntrepriseSaisonniere": "N",
      ...
      "TelephonePrincipal": {
        "ID_Telephone": 716,
        "ID_Entreprise": 374,
        "ID_Contact": null,
        "TypeTelephoneLookup": "PRI",
        "NumeroTelephone": "999-328-4200",
        "Poste": null,
        "DateCreation": "2017-03-29T15:27:04",
        "CodeUsagerCreation": "ASDQQ",
        "DateModification": null,
        "CodeUsagerModification": null
      },
      "TelephoneSecondaire": {
        "ID_Telephone": null,
        "ID_Entreprise": null,
        "ID_Contact": null,
        "TypeTelephoneLookup": null,
        "NumeroTelephone": "123-465-999", <!-- my input id="telephoneSansFrais" value -->
        "Poste": null,
        "DateCreation": null,
        "CodeUsagerCreation": null,
        "DateModification": null,
        "CodeUsagerModification": null
      },
}

问题暂未有回复.您可以查看右边的相关问题.
1 如何在MVC 3控制器中获取动态创建的Json数据集?

好的,所以我正在使用MVC 3,它非常适合将JSON数据集反序列化为传递给控制器​​操作的强类型对象。 不幸的是,我还没有找到解决动态案例的方法。 内置的Json反序列化和类是否支持“未定义”属性集? 例如,假设我有一些固定数据,例如姓名和年龄,但我还想传递动态创建的分级列表,用户可以 ...

2 可视化3D数据集

我有一个200乘50的矩阵。我想显示一个相应颜色的网格,y轴为50,x轴为200。 我尝试使用网格但是: 我在彩色部分之间留下了很多空白区域(我希望区域包含一个完整的正方形填充区域,最好还有一个围绕每个区域的框架)和 角度是3D-ish,而我希望它是“直接从上面”。 ...

3 如何从用户获取文本输入并在 Qt 3D 中的 3d 对象上设置该文本?

如下图所示,取自动态纹理qt示例,我想做的很简单,我想从用户那里获取文本输入并将其显示在3d对象上。 我在我的应用程序的逻辑部分使用 C++(只是提到这一点是因为我不知道这个动画在 qml 中是否完全可行) Qt 动态纹理示例的图像显示了我想要实现的目标 我正在尝试创建一个信用卡模拟器,我的 ...

4 如何将 vtk 文件转换为 3D 数据集?

我有一个从程序输出的 vtk 文件,我需要的是一个 3D 数据集。 这个vtk文件是我在另一个程序中绘制的一个ROI,我想把它转换成一个ROI的掩码(即ROI所在的地方为1s,其他地方为0)。 它应该与原始 3D 图像大小相同,在其上绘制了 ROI。 我在 Python 中工作。 有谁知道如何将这个 ...

6 如何基于给定轴平滑 3D 数据集?

我有一个 3D 数据集。 X1 和 X2 是有争议的变量,而 X3(结果变量)是二进制的。 数据如图所示。 我想平滑 X3 轴上的数据(一种局部平均) 3D 数据点。 我的意思是对于给定的 X1 和 X2,X3 变量而不是二进制变量应该是 0 和 1 之间的数字。例如,当 X1=1100 和 X2 ...

8 如何在 Frangi 过滤器中为 DICOM 数据的 3D 堆栈设置间距

我正在使用Frangi 过滤器进行肝血管分割。 问题是这些数据不是各向同性的 [1,1,1]。 我可以重新采样。 它创建了更多的切片,但它会丢失像素并且不那么精确。 我发现,也许我可以直接在计算 Hessian 函数的脚本中的 Frangi 函数(skimage 函数)中更改它。 但即便如此,我也 ...

9 如何使用3D数据使颜色条显示设置限制

我已经找到了许多使用pcolor和clim等功能的示例,但是除非我滥用它们,否则它们似乎只希望使用带有x,y,值的二维数据。 我的数据格式如下: 在开始绘制脚本之前,我正在执行插值操作,该操作会为我提供新的网格化数据,但不会更改值的范围,这意味着在两个图形之间使用单个颜色条就足够了 ...

10 将3D椭圆拟合到一组3D数据点

我已经设置了3D坐标为x , y和z的点,并且必须确定最适合其分布的椭球。 很难做到的是,我的点没有分布在椭圆形的表面上,而是大约充满了雪茄所定义的空间。 我通常使用python / C,并且我知道之前曾有人问过这个问题,但是我找不到任何令人满意的答案。 你知道我该如何解决这个问题? ...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2022 STACKOOM.COM