ABP-ZERO 5.3.0 使用从零开始(三)建导航

                *ABP框架----------建导航***重点内容**

前言:先按照我写的步骤一步一步走,不是很好理解,多写几遍自己去慢慢的感悟

1.打开AppPermissions添加导航权限
实例:

 // 1级导航权限	  
 public const string Pages_CodeProduct="Pages.CodeProduct";
 // 2级导航权限,依次类推
 public const string Pages_CodeProduct_Code="Pages.CodeProduct.Code";

2.打开zh-cn-xml 为你的英文导航写上中文名字

 //name的名可以自己定义,value的值是前端页面上显示的内容
 <text name="CodeProduct" value="代码生成器"/>
 //会报个错  因为代码里已经给code字典里赋值了 可以删掉这一行
 <text name="Code" value="实体录入"/>

3.打开AppAuthorizationProvider .cs赋予导航权限,找见这个类下的这个方法

 public override void SetPermissions(IPermissionDefinitionContext context)
 {
 //一级标题
 var CodeProduct= pages.CreateChildPermission(AppPermissions.Pages_CodeProduct, L("CodeProduct"), multiTenancySides: MultiTenancySides.Host);
 //二级标题  必须跟在一级标题后面
CodeProduct.CreateChildPermission(AppPermissions.Pages_CodeProduct_Code, L("Code"), multiTenancySides: MultiTenancySides.Host);
 }

4.打开PageNames.cs,为方便建一个内部类

public static class Dashboard
{
  //测试一级导航
  public const string CodeProduct= "Dashboard.CodeProduct";
  //测试二级导航
  public const string Code= "Dashboard.Code"; 
 }

5.打开AppNavigationProvider.cs

.AddItem(new MenuItemDefinition(
					PageNames.Dashboard.CodeProduct,
					L("CodeProduct"),
					url: "codeproduct",
					icon: "icon-home",
					requiredPermissionName: AppPermissions.Pages_CodeProduct
					).AddItem(new MenuItemDefinition(
						PageNames.Dashboard.Code,
						L("Code"),
						url: "codeproduct.code",
						icon: "icon-layers",
						requiredPermissionName: AppPermissions.Pages_CodeProduct_Code
						)
					)
				)

6.打开WEB层下找见App文件夹目录下的app.js里的appModule.config里面写入下面代码
if (abp.auth.hasPermission(‘Pages.CodeProduct.Code’)) {
$stateProvider.state(‘code’, {
url: ‘/code’,
templateUrl: ‘~/App/common/views/code/index.cshtml’
});
}
7.按照第六步里的 templateUrl: ‘~/App/common/views/code/index.cshtml’,路径建一个cshtml页,路径没必要非和我的一样,但是必须要找到自己写的页面所在的位置,在页面里写入成功2字
这里写图片描述
8.启动vs,进入主页面,找见管理,进入角色,点击操作,进入修改,选择权限。刷新就可以,看到成功。一定要分配好权限。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
abp-vnex eventbus是一个用于在ABP框架中进行事件通信的模块。要使用abp-vnex eventbus,您需要按照以下步骤进行安装和配置: 1. 首先,您需要安装abp-vnex eventbus模块。可以通过运行以下命令来安装: ```shell npm install abp-vnex-eventbus --save ``` 2. 安装完成后,您需要在您的应用程序的模块中导入abp-vnex eventbus模块。在您的模块文件中,添加以下代码: ```typescript import { AbpVnexEventBusModule } from 'abp-vnex-eventbus'; @NgModule({ imports: [ AbpVnexEventBusModule ] }) export class YourModule { } ``` 3. 现在,您可以在您的组件或服务中使用abp-vnex eventbus来发送和接收事件。首先,您需要导入`AbpVnexEventBusService`: ```typescript import { AbpVnexEventBusService } from 'abp-vnex-eventbus'; ``` 4. 在您的组件或服务中,您可以使用`AbpVnexEventBusService`的`emit`方法来发送事件。例如,发送一个名为`myEvent`的事件: ```typescript constructor(private eventBus: AbpVnexEventBusService) { } sendEvent() { this.eventBus.emit('myEvent', { data: 'Hello World' }); } ``` 5. 要接收事件,您可以使用`AbpVnexEventBusService`的`on`方法。在您的组件或服务中,添加以下代码: ```typescript constructor(private eventBus: AbpVnexEventBusService) { } ngOnInit() { this.eventBus.on('myEvent').subscribe((eventData) => { console.log(eventData.data); // 输出:Hello World }); } ``` 这样,您就可以使用abp-vnex eventbus模块来进行事件通信了。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值