网上看到对钩子机制的说明
整个机制核心分为三大块:
    一个插件经理类:这是核心之核心。它是一个应用程序全局Global对象。它主要有三个职责:
        负责监听已经注册了的所有插件,并实例化这些插件对象。
        负责注册所有插件。
        当钩子条件满足时,触发对应的对象方法。 
    插件的功能实现:这大多由第三方开发人员完成,但需要遵循一定的规则,这个规则是插件机制所规定的,因插件机制的不同而不同,下面的显示代码你会看到这个规则。
    插件的触发:也就是钩子的触发条件。具体来说这是一小段代码,放置在你需要插件实现的地方,用于触发这个钩子。
我不明白的是插件的触发,其实就是在页面中放一小段代码来调用钩子。这跟我直接在页面中调用某个定义好的方法有区别吗?插件触发必须要在页面中放代码吗?

解决方案 »

  1.   

    钩子(Hook)是一个应用系统预留的用于扩展功能的接口
    被钩子调用的函数称为回调函数所以你说“放一小段代码来调用钩子”是不对的
    应该说是 放一小段代码让钩子来调用你只需把你书写好的插件“挂在”合适的钩子上就可以了,剩下的工作由应用系统自己完成
      

  2.   

    说得普通点:我系统的钩子都要放在 aa 夹下。并且要继承 test 这个类。
    如果检测通过,则会在一些地方调用这个类的某个方法。