Skip to content

自定义端口开发 NIUCLOUD框架目前有web,uni-app,admin这三个端口。有时候我们有这样的需求,在一个应用或插件中,希望开发一一个师傅端,一个用户端,或者希望开发一个收银台POS端口。NIUCLOUD框架的设计中是完全支持的。这个自定义的端口可以是把现有的web,uni-app复制出来一份修改,或者是基于自己的前端架构体系完全独立开发。

实现步骤如下:

在插件的info.json 文件中,添加如下端口描述节

json
{
  "title": "商城系统",
  "desc": "实物虚拟商品,订单,物流同城配送,门店自提",
  "key": "shop",
  "version": "1.2.0",
  "author": "niucloud",
  "type": "app",
  "support_app": "",
  "port": [
    {
      "name": "doc",  
      "title": "文档管理",  
      "command": "npm i;npm run docs:build", 
      "outDir": "dist/build/h5"   
    }
  ]
}

要注意,port节是一个数组,支持在本插件或应用中添加多个端口

  "name": "doc",   // 端口名称 需与端口目录保持一致
  "title": "文档管理",  // 端口标题
  "command": "npm i;npm run docs:build",  // 编译命令
  "outDir": "dist/build/h5"   // 编译文件输出目录相对于端口源码根目录

自定义端口的实际文件夹目录的名称需要与info.json中完全一致对应

2.在插件的 app\config 文件夹下添加路由文件route.php文件

php
use think\facade\Route;

Route::rule( rule:'doc', function() {
      return view( template: app()->getRootPath().'public/doc/index.html');
})->pattern(['any'=> '\w+']);

通过上面的步骤,插件在云安装,云编译的时候,系统会自动把该自定义端口,按照command命令指定的格式,编译到outDir目录下。如果是开发者本地编译和运行,只要执行第三个步骤就可以,第一二步不需要。

基于 MIT 协议发布