di.xml

minusone 15天前 60

di.xml 这个文件一直没怎么看懂,看了几遍,感觉有好几个作用。

1.指定或重写Proxy

2.指定或重写某个类中构造函数入参所依赖Proxy

3.声明plugin,用于修改目标类若干个method的入参或者返回结果


能通俗一点说明这个文件的用法和作用嘛?谢谢大佬们


最新回复 (3)
  • Soown 15天前
    0 引用 2
    关于di,即依赖注入管理(现代PHP的特性),在magento架构中依赖注入更抽象,但是在magento2日常开发中一般只用到preference标签来进行类的重写或者接口的模型继承,关于visualType标签(虚拟类型) 的作用,在后台开发中有用到,具体的理解需要你去官网逛逛了
  • admin 15天前
    0 引用 3

    上面这位大佬说的很对。
    di.xml 一般是用来在不直接修改原始类代码的情况下进行动态改写。


    magento2里你只需要对preference和plugin这2种改写类的方式熟悉就行了。
    其中plugin只能改写public类型的function,其他protection private类型的function 你只能通过preference来重写 再继承了。



    https://devdocs.magento.com/guides/v2.3/extension-dev-guide/build/di-xml-file.html?itm_source=devdocs&itm_medium=search_page&itm_campaign=federated_search&itm_term=preference

  • minusone 14天前
    0 引用 4
    多谢两位大佬
  • 游客
    登录 | 注册 方可回帖
返回
发帖