首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用Angularjs2中接口为复杂JSON对象建模

如何使用Angularjs2中接口为复杂JSON对象建模
EN

Stack Overflow用户
提问于 2017-12-27 15:03:51
回答 2查看 628关注 0票数 0

对于复杂的JSON对象,我必须使用接口而不是类来创建模型。

请帮助删除编译错误。我正在尝试扩展我的ICTCompanyDetails接口中的Address接口。而是在组件中创建模型时。它给了我编译错误。

接口包括:

代码语言:javascript
复制
import { ICTAddress               } from '../../../generic/address';
    export interface ICTCompanyDetails extends ICTAddress{
    ct_company_id                       :string;
    ct_company_owner_name               :string;
    ct_company_name                     :string;
    ct_company_address                  :ICTAddress[];
    ct_company_email_id                 :string;
    ct_company_mobile_no                :string;
    ct_company_phone_no                 :string;
    ct_company_gst_no                   :string;
    ct_company_pan_no                   :string;
    ct_company_website                  :string;
    ct_company_sac_code                 :string;
    ct_company_logo_name                :string;
    //ct_company_logo                     :File;
    ct_company_digital_sign_stamp_name  :string;
    //ct_company_digital_sign_stamp       :File;
    ct_company_term_condition           :string;
    ct_company_revoke                   :string;
    ct_company_status                   :string;
    ct_company_last_update_datetime     :Date;
    ct_company_last_update_ip           :string;
    ct_company_last_update_login_id     :string;
    }
        export interface ICTAddress{
        ct_address_id   :string;
        ct_address_1    :string;
        ct_address_2    :string;
        ct_address_3    :string;
        ct_country      :string;
        ct_state        :string;
        ct_town_n_city  :string;
        ct_postal_code  :string;
       }

Model is:

company: ICTCompanyDetails = {
        ct_company_id                       : "",
        ct_company_owner_name               : "",
        ct_company_name                     : "",
        ct_company_address                  : ICTAddress [ 
            ct_address_id   :"",
            ct_address_1    :"",
            ct_address_2    :"",
            ct_address_3    :"",
            ct_country      :"",
            ct_state        :"",
            ct_town_n_city  :"",
            ct_postal_code  :"",
        ],
        ct_company_email_id                 : "",
        ct_company_mobile_no                : "",
        ct_company_phone_no                 : "",
        ct_company_gst_no                   : "",
        ct_company_pan_no                   : "",
        ct_company_website                  : "",
        ct_company_sac_code                 : "",
        ct_company_logo_name                : "",
        //ct_company_logo: new File([], ""),
        //ct_company_logo                     :new Blob([], { type: '' }),
        ct_company_digital_sign_stamp_name  : "",
        //ct_company_digital_sign_stamp: new File([], ""),
        //ct_company_digital_sign_stamp       :new Blob([], { type: '' }),
        ct_company_term_condition           : "",
        ct_company_revoke                   : "",
        ct_company_status                   : "",
        ct_company_last_update_datetime     : new Date(),
        ct_company_last_update_ip           : "",
        ct_company_last_update_login_id     : ""
    };
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-12-27 15:39:50

我修复它的时候得到了结果:

代码语言:javascript
复制
ct_company_address                  : [
  { ct_address_id   : '' },
  { ct_address_1    : '' },
  { ct_address_2    : '' },
  { ct_address_3    : '' },
  { ct_country      : '' },
  { ct_state        : '' },
  { ct_town_n_city  : '' },
  { ct_postal_code  : '' }
] as ICTAddress[],

完整版本:

https://plnkr.co/edit/bcjMU9eVcWOnO7tIcqhV?p=preview

票数 0
EN

Stack Overflow用户

发布于 2017-12-27 15:19:01

在您的组件中使用以下代码:

代码语言:javascript
复制
company: ICTCompanyDetails = {
        ct_company_id                       : "",
        ct_company_owner_name               : "",
        ct_company_name                     : "",
        ct_company_address                  : [ 
            ct_address_id   :"",
            ct_address_1    :"",
            ct_address_2    :"",
            ct_address_3    :"",
            ct_country      :"",
            ct_state        :"",
            ct_town_n_city  :"",
            ct_postal_code  :"",
        ],
        ct_company_email_id                 : "",
        ct_company_mobile_no                : "",
        ct_company_phone_no                 : "",
        ct_company_gst_no                   : "",
        ct_company_pan_no                   : "",
        ct_company_website                  : "",
        ct_company_sac_code                 : "",
        ct_company_logo_name                : "",
        //ct_company_logo: new File([], ""),
        //ct_company_logo                     :new Blob([], { type: '' }),
        ct_company_digital_sign_stamp_name  : "",
        //ct_company_digital_sign_stamp: new File([], ""),
        //ct_company_digital_sign_stamp       :new Blob([], { type: '' }),
        ct_company_term_condition           : "",
        ct_company_revoke                   : "",
        ct_company_status                   : "",
        ct_company_last_update_datetime     : new Date(),
        ct_company_last_update_ip           : "",
        ct_company_last_update_login_id     : ""
    };

我刚刚编辑了ct_company_address。希望这能有所帮助。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47987809

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档