这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助

最近在研究一个基于TP6的框架CRMEB,这里分享下我的开发心得

首先在上篇文章中,我们安装了CRMEBphp接口项目,需要可以看这一篇

TP6框架--CRMEB学习笔记:项目初始化+环境配置

1.获取项目

这里是git地址

https://gitee.com/ZhongBangKeJi/CRMEB-Min.git

下载后用WebStorm打开

2.依赖安装+项目运行

先打开终端,运行

npm install

全局安装依赖

然后在代码上修改后台接口地址,改为上篇中安装好的后台接口地址

然后根据运行文件

运行以下代码运行项目

npm run serve

打开网站看效果

登录成功后的效果

3.创建路由

现在,给大家说说创建新页面,新路由的过程,首先,打开设置,点击管理权限,打开权限规则,我们要先新建一个规则

设置好参数

打开代码,先创建好文件夹和文件

再去router中创建test文件

内容如下,可做参考:

import BasicLayout from '@/components/main'

const pre = 'test_'

export default {
path: '/admin/test',
name: 'test',
header: 'test',
redirect: {
name: `${pre}wechatMenus`
},
meta: {
auth: ['admin-app']
},
component: BasicLayout,
children: [
{
path: 'index',
name: `${pre}Index`,
meta: {
auth: ['test-view'],
title: '测试页面'
},
component: () => import('@/pages/test/index')
}
]
}

再在router.js中导入test,代码如下:

import index from './modules/index'
import product from './modules/product'
import order from './modules/order'
import user from './modules/user'
// import echarts from './modules/echarts'
import setting from './modules/setting'
import finance from './modules/finance'
import cms from './modules/cms'
import marketing from './modules/marketing'
import app from './modules/app'
import system from './modules/system'
import BasicLayout from '@/components/main'
import frameOut from './modules/frameOut'
import test from './modules/test'
/**
* 在主框架内显示
*/ const frameIn = [
{
path: '/admin/',
meta: {
title: 'CRMEB'
},
redirect: {
name: 'home_index'
},
component: BasicLayout,
children: [
// {
// path: '/admin/system/log',
// name: 'log',
// meta: {
// title: '前端日志',
// auth: true
// },
// component: () => import('@/pages/system/log')
// },
{
path: '/admin/system/user',
name: `systemUser`,
meta: {
auth: true,
title: '个人中心'
},
component: () => import('@/pages/setting/user/index')
},
// 刷新页面 必须保留
{
path: 'refresh',
name: 'refresh',
hidden: true,
component: {
beforeRouteEnter (to, from, next) {
next(instance => instance.$router.replace(from.fullPath))
},
render: h => h()
}
},
// 页面重定向 必须保留
{
path: 'redirect/:route*',
name: 'redirect',
hidden: true,
component: {
beforeRouteEnter (to, from, next) {
// console.log(rom.params.route)
next(instance => instance.$router.replace(JSON.parse(from.params.route)))
},
render: h => h()
}
}
]
},
{
path: '/admin/widget.images/index.html',
name: `images`,
meta: {
auth: ['admin-user-user-index'],
title: '上传图片'
},
component: () => import('@/components/uploadPictures/widgetImg')
},
{
path: '/admin/widget.widgets/icon.html',
name: `imagesIcon`,
meta: {
auth: ['admin-user-user-index'],
title: '上传图标'
},
component: () => import('@/components/iconFrom/index')
},
{
path: '/admin/store.StoreProduct/index.html',
name: `storeProduct`,
meta: {
title: '选择商品'
},
component: () => import('@/components/goodsList/index')
},
{
path: '/admin/system.User/list.html',
name: `changeUser`,
meta: {
title: '选择用户'
},
component: () => import('@/components/customerInfo/index')
},
{
path: '/admin/widget.video/index.html',
name: `video`,
meta: {
title: '上传视频'
},
component: () => import('@/components/uploadVideo/index')
},
index,
cms,
product,
marketing,
order,
user,
finance,
setting,
system,
app,
test
] /**
* 在主框架之外显示
*/ const frameOuts = frameOut /**
* 错误页面
*/ const errorPage = [
{
path: '/admin/403',
name: '403',
meta: {
title: '403'
},
component: () => import('@/pages/system/error/403')
},
{
path: '/admin/500',
name: '500',
meta: {
title: '500'
},
component: () => import('@/pages/system/error/500')
},
{
path: '/admin/*',
name: '404',
meta: {
title: '404'
},
component: () => import('@/pages/system/error/404')
}
] // 导出需要显示菜单的
export const frameInRoutes = frameIn // 重新组织后导出
export default [
...frameIn,
...frameOuts,
...errorPage
]

之后还需要一步,因为路由是缓存下来的,需要清除了环境才能查看

如果对您有所帮助,欢迎您点个关注,我会定时更新技术文档,大家一起讨论学习,一起进路,下一篇写如何解决各个模块文件问题,和大家一起解析下各个模块。

TP6框架--CRMEB学习笔记:布置后台管理框架+配置路由的更多相关文章

  1. Mina框架的学习笔记——Android客户端的实现

    Apache MINA(Multipurpose Infrastructure for Network Applications) 是 Apache 组织一个较新的项目,它为开发高性能和高可用性的网络 ...

  2. jfinal框架教程-学习笔记

    jfinal框架教程-学习笔记 JFinal  是基于 Java  语言的极速  WEB  + ORM  开发框架,其核心设计目标是开发迅速.代码量少.学习简单.功能强大.轻量级.易扩展.Restfu ...

  3. Java框架spring 学习笔记(十八):事务管理(xml配置文件管理)

    在Java框架spring 学习笔记(十八):事务操作中,有一个问题: package cn.service; import cn.dao.OrderDao; public class OrderSe ...

  4. MySQL学习笔记-数据库后台线程

    数据库后台线程 默认情况下讲述的InnoDB存储引擎,以后不再重复声明.后台线程有7个--4个IO thread,1个master thread,1个锁监控线程,1个错误监控线程.IO thread的 ...

  5. golang日志框架--logrus学习笔记

    golang日志框架--logrus学习笔记 golang标准库的日志框架非常简单,仅仅提供了print,panic和fatal三个函数,对于更精细的日志级别.日志文件分割以及日志分发等方面并没有提供 ...

  6. go微服务框架kratos学习笔记五(kratos 配置中心 paladin config sdk [断剑重铸之日,骑士归来之时])

    目录 go微服务框架kratos学习笔记五(kratos 配置中心 paladin config sdk [断剑重铸之日,骑士归来之时]) 静态配置 flag注入 在线热加载配置 远程配置中心 go微 ...

  7. # go微服务框架kratos学习笔记六(kratos 服务发现 discovery)

    目录 go微服务框架kratos学习笔记六(kratos 服务发现 discovery) http api register 服务注册 fetch 获取实例 fetchs 批量获取实例 polls 批 ...

  8. go微服务框架kratos学习笔记七(kratos warden 负载均衡 balancer)

    目录 go微服务框架kratos学习笔记七(kratos warden 负载均衡 balancer) demo demo server demo client 池 dao service p2c ro ...

  9. go微服务框架kratos学习笔记四(kratos warden-quickstart warden-direct方式client调用)

    目录 go微服务框架kratos学习笔记四(kratos warden-quickstart warden-direct方式client调用) warden direct demo-server gr ...

  10. go微服务框架kratos学习笔记八 (kratos的依赖注入)

    目录 go微服务框架kratos学习笔记八(kratos的依赖注入) 什么是依赖注入 google wire kratos中的wire Providers injector(注入器) Binding ...

随机推荐

  1. 【开工大吉】推荐4款开源、美观的WPF UI组件库

    前言 经常有小伙伴在技术群里提问:WPF有什么好用的UI组件库?,今天大姚给大家推荐4款开源.美观的WPF UI组件库. WPF介绍 WPF 是一个强大的桌面应用程序框架,用于构建具有丰富用户界面的 ...

  2. NC204871 求和

    题目链接 题目 题目描述 已知有 \(n\) 个节点,有 \(n-1\) 条边,形成一个树的结构. 给定一个根节点 \(k\) ,每个节点都有一个权值,节点i的权值为 \(v_i\) . 给 \(m\ ...

  3. 存储过程分页以及参数拼接sql语句、C#调用存储过程

    1.C#调用存储过程,带参数返回的功能,而且是参数化拼接,这样就可以防止sql注入 System.Data.SqlClient.SqlParameter[] parameters = { new Sy ...

  4. linux下使用find查找并操作文件

    介绍 最近在centos7上部署了一套环境,需要根据文件名找到程序运行路径下的文件,并进行移动文件操作,为此查阅了一番,记录下这个操作的脚本.我想很多人都会有这个需求,查找简单,但是要对对查找到的文件 ...

  5. Encrypt or Decrypt sensitive data using PLSQL - DBMS_CRYPTO

    Oracle 10g introduced Transparent Data Encryption, which is about storing data physically as encrypt ...

  6. 对yuv存储格式中的yuv420p和yuv420sp的理解

    一.对yuv的认识 yuv是一种颜色编码系统,它将图像的亮度和色度分离开来.y表示亮度,即黑白信息:uv表示色度,即颜色信息.yuv常用于视频压缩和传输中,因为它可以更有效地表示人眼对亮度和色度的敏感 ...

  7. C++ 快速加载 Dll 里的 API

    最近项目里要重新编写程序加载器,也就是编译出一个可执行文件,在 Windows 上是 .exe 为什么要程序加载器? 个人理解是,可执行文件大小最好是越小越好,功能都可以由 dll 文件执行 而程序加 ...

  8. win32 - Session 0 隔离

    在Windows XP,Windows Server 2003和Windows操作系统的早期版本中,所有服务都与登录控制台的第一个用户在同一会话中运行.该会话称为会话0.在会话0中一起运行服务和用户应 ...

  9. NSIS制作安装包笔记(二):NSIS使用NSIS+Qt界面制作安装包流程

    前言   Nsis可以使用duilib也可以使用qt界面,笔者主要qt,本文章梳理nsis+qt制作安装包的基本流程.   下载Nsis-Ui-Plugin插件   Github地址:https:// ...

  10. MySQL 数据库死锁排查

    死锁排查方法 查看进程状态 show processlist; 查看行锁的状态 show status like 'InnoDB_row_lock%'; 查询是否有死锁 show engine inn ...