@bw-yos/build-plugin-lowcode
v1.0.1
Published
build plugin for component-to-lowcode
Downloads
70
Readme
概述
发布值班卡片(10行)
# 1) 构建与本地协议门禁
pnpm run release:verify
# 2) 已发布场景再跑远程可访问性门禁
pnpm run release:verify:remote
# 3) 单包发布(以 component 为例)
cd demo/component
pnpm run pub --dry-run
pnpm run pub # 或 pnpm run pub:beta更多细节:
- 交付 SOP: 交付文档.md
- 引擎接入: Demo产物接入阿里LowCodeEngine使用指南.md
使用文档
export interface LowcodeOptions {
builtinAssets?: Array<string|Assets>; // 会作为内置资产保存到构建产物中
extraAssets?: Array<string|Assets>; // 只在调试环境加载到资产包中
noParse?: boolean; // 关闭自动解析生成 lowcode meta
categories?: string[]; // 组件在组件面板中的分类
groups?: string[]; // 组件在组件面板中的 tab 分组
baseLibrary?: 'react'|'rax';
setterMap?: SetterMap; // 注入 setter
}
export interface SetterMap {
[SetterName: string]: string;
}
export type Assets = {
package: string;
version: string;
urls: string[];
library: string;
};
// 示例
// {
// package: 'antd',
// version: '4.17.3',
// urls: [
// 'https://g.alicdn.com/code/lib/antd/4.17.3/antd.min.js',
// 'https://g.alicdn.com/code/lib/antd/4.17.3/antd.min.css',
// ],
// library: 'antd',
// }ice-pkg 构建模式
本插件兼容 ice-pkg 的两种构建模式:transform 与 bundle。
可在 build.lowcode.js 中按 @ice/pkg 规范配置:
module.exports = {
transform: {
formats: ['esm', 'es2017'],
},
// 或者
bundle: {
outputDir: 'dist',
formats: ['esm', 'es2017'],
},
};插件会根据 package.json 的 main/module 以及实际构建产物自动生成 pkg.json 的 exports["."],避免在两种模式下出现入口不匹配。
兼容性说明:当业务包 package.json 未声明 files 字段时,插件会自动兜底初始化,避免构建阶段报错。
产物目录速查
详细说明见 产物目录说明.md。 联调验收见 LowCodeEngine联调验收清单.md。 完整接入步骤见 Demo产物接入阿里LowCodeEngine使用指南.md。
.tmp:构建中间临时文件目录(调试用,不建议发布依赖)。build:低代码物料主目录(assets/meta/view/render)。esm/es2017/cjs:transform 逐文件产物目录。dist:bundle 聚合产物目录。lowcode_es/lowcode_lib:低代码原型入口双格式目录(import/require)。
开发调试
组件开发
demo/component目录下是测试组件的项目,改项目引用了 build-plugin-lowcode,相关配置在在 demo/component/build.lowcode.js 中;
可以修改 build-plugin-lowcode 的代码、修改 demo/component/build.lowcode.js 的配置进行调试;
# 在 build-plugin-lowcode 根目录下执行启动调试环境
npm run component:dev