您当前的位置: 首页 >  swift

Swift调用协议扩展导致崩溃的解决

发布时间:2018-12-19 10:36:25 ,浏览量:0

本博向大家介绍Swift对象委托的一种变通方法,但遗憾的是该方法在Swift 4.2中会导致App崩溃,生活还要继续,且看本猫如何解决它喽.

什么是对象委托

简单的说对象委托就是对象A假装对象B,当然A和B的类完全不同.

用过Ruby的童鞋都知道,这很容易完成:

Class Account < ActiveRecord::Base  
   
    delegate :firstname, :to => :user  
    # firstname => user.firstname  
  
    delegate :firstname, :to => :user, :prefix => true  
    # user_firstname => user.firstname  
  
    delegate :firstname, :to => :user, :allow_nil => true, :prefix => true  
    # user_firstname => user.try(:firstname)  
   
    delegate :name, :to => "user.try(:editor)", :prefix => :editor  
    # editor_name => user.editor.name  
  
    delegate :name, :to => "user.try(:editor)", :prefix => :editor, :allow_nil => true  
    # editor_name => user.editor.try(:name)  
   
end

如上,如果我们调用Account的firstna

关注
打赏
1688896170
查看更多评论

暂无认证

  • 0浏览

    0关注

    107766博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文
立即登录/注册

微信扫码登录

0.4886s