以首页幻灯片为例子,首页幻灯片是在插件Nop.Plugin.Widgets.NivoSlider里面实现的
- 首页视图位置
- 这里其实是加载插件里面的视图内容,具体实现在插件实现
- 这个是扩展方法,就是执行Nop.Web 下面的WidgetController控制器里面的子动作WidgetsByZone
这个WidgetByZone就是查找当前已使用的@Html.Widget(“xxx”)并返回相应的控制器名字,方法名和路由值
- Widget控制器位置
- LoadActiveWidgetsByWidgetZone此方法是加载活动的@Html.Widget(“xxx”)的方法,具体实现大家可在相应实现类找到,注意它的返回对象是IWidgetPlugin接口
- 这个方法根据参数名就知道是通过@Html.Widget(“xxx”)里面的xxx作为参数找到实现@Html.Widget(“xxx”)这个的插件,具体实现在方法里面有
这里面是那个IWidgetService的实现类,这里的3方法后面跟着的是模糊查询,所以会根据页面有@Html.Widget(“xxx”)的xxx找到具体实现的插件
- 实现类的具体位置
- 加载已活动的@Html.Widget(“xxx”)实现方法
- 这个方法是定定义在插件里头的,它被定义在IWidgetPlugin接口下,所有有需要实现@Html.Widget(“xxx”)的插件都必须实现该接口
1. 幻灯片插件的位置
2. 实现IWidgetPlugin接口
3. 实现IWidgetPlugin接口下面的GetWidgetZones方法并在IWidgetService接口下的实现类被调用实现
--鱼头鱼尾
这就是我对nop里面的@Html.Widget(“xxx”)的理解,个人拙见,还望各位看官多多包涵。其它有什么细节的事可以在群里发问或者私聊我,我会的就帮忙。(群号: 75272942)
个人联系QQ:875755898
备注:
本人开发有微信扫码登录,新浪微博登录等外部授权插件,微信扫码(模式二)支付、银联在线支付的支付插件,(可在线测试预览)
因生活所迫需要卖插件并提供插件的后续服务,更新(依赖nop的版本)及技术指导(购买插件者)
外部授权插件:只要是基于Oauth2.0授权协议的都可以代开发,开发需客户提供相关资料(如商户号,密钥等等关于授权所需要用得到的资料,并承诺对该客户的资料保密)。
插件价格:私聊详谈。
插件版本支持3.1及高于3.1版本,后续会跟着nop版本更新。
后续我会尽可能出一套插件的视频开发教程,时间条件充裕的话。
购买插件者需尊重我的个人知识产权。
谢谢!!!
时间: 2024-11-05 13:17:26