ZF2 /使用2个不同的视图查看具有相同名称的帮助者



在ZF2模块化应用中,我有2个不同的助手在2个不同模块中具有相同名称的助手。

我想在第一个模块中使用一个,而在第二个模块中使用一个。

在第一个模块配置文件中,我有一个带有视图帮助者定义的view_helpers配置密钥。

view_helpers => [
    myCustomViewHelper => myCustomViewHelper::class
]

在第二个中,我有一个my_module_view_helpers config键...

my_module_view_helpers => [
    myCustomViewHelper => myCustomViewHelper2::class
]

我想做的就是第二个模块删除第一个。

如何实现这一目标?

我理解,模块加载顺序确定实际注册的哪个。如果您最后加载自定义模块,它应该成为带有该名称的Defatto助手。

确保在两个模块配置中使用正确的键。

'view_helpers' => [
    'invokables' => [
        'thatHelper' => ThatHelper::class,
    ],
    'factories' => [
        'otherHelper' => ThatOtherHelper::class,
    ]
]

您将遇到的内容是对"其他"模块中该助手的任何程序引用也将使用您的。除非这是意图,否则可能会造成伤害的世界。我的建议,给它一个新名称。;)这只是一个名字!:D

最新更新