8000 GitHub - zhhb/mometa: 🛠 [Beta] é¢å‘ç ”å‘的低代ç å…ƒç¼–程,代ç å¯è§†ç¼–辑,辅助编ç å·¥å…·
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content
/ mometa Public
forked from imcuttle/mometa

🛠 [Beta] é¢å‘ç ”å‘的低代ç å…ƒç¼–程,代ç å¯è§†ç¼–辑,辅助编ç å·¥å…·

License

Notifications You must be signed in to change notification settings

zhhb/mometa

 
 

Repository files navigation

é¢å‘ç ”å‘的低代ç å…ƒç¼–程(代ç å¯è§†åŒ–)能力


背景

mometa 䏿˜¯ä¼ ç»Ÿä¸»æµçš„低代ç å¹³å°ï¼ˆå¦‚ amis/云凤è¶ï¼‰ï¼Œmometa 是é¢å‘ç ”å‘çš„ã€ä»£ç å¯è§†è®¾è®¡ç¼–辑平å°ï¼›å®ƒæ›´åƒæ˜¯ dreamweaverã€gui å¯è§†ç¼–辑 之于 程åºå‘˜ã€‚

它用于解决的问题有:

  • 对低代ç å¹³å°ä¸å½¢æˆä¾èµ–,二次开å‘å¯ä»¥æ— ç¼è¿›å…¥ä»£ç å¼€å‘模å¼
  • åŒæ—¶æ”¯æŒæ‰€è§å³æ‰€å¾—çš„å¯è§†ç¼–è¾‘ï¼Œç”¨äºŽææ•ˆï¼Œæå‡å¼€å‘体验
  • æä¾›ç‰©æ–™ç”Ÿæ€ï¼Œå¯è‡ªå®šä¹‰ç‰©æ–™ï¼Œæå‡ç‰©æ–™ä½¿ç”¨ä½“验,æå‡å¤ç”¨çއ

特性

  • 🛠 é¢å‘ç ”å‘的代ç å¯è§†åŒ–编辑,直接作用于æºç 
    • å“应å¼å¸ƒå±€ã€è·¯ç”±æ¨¡æ‹Ÿã€ç‰©æ–™é¢„览
    • åå‘定ä½ï¼ˆè§†å›¾å®šä½æºç ï¼‰
    • 拖拽æ’入物料
    • 拖拽移动
    • 上下移动
    • 删除
    • 替æ¢
    • 层级选择
  • 💠开放物料生æ€ï¼Œå¯å®šåˆ¶å›¢é˜Ÿå†…ç‰©æ–™åº“ï¼Œè§ mometa-mat
  • 💎 多语言ã€å¤šç”Ÿæ€æ”¯æŒï¼Œç›®å‰æš‚åªæ”¯æŒ React,åŽç»­æœ‰è®¡åˆ’æ”¯æŒ Vue
  • 🔥 接入å‹å¥½ï¼ŒWebpack>=4 æ’件化接入
  • 🌟 å¼€å‘å‹å¥½ï¼Œç‰©æ–™åº“支æŒçƒ­æ›´æ–°ï¼Œä¸ç ´åå·²æœ‰å¼€å‘æ¨¡å¼

使用场景

æ–°å¼€å‘一个页é¢

  1. ä½¿ç”¨å›¢é˜Ÿå¼€å‘æŒ‡ä»¤ï¼Œæ–°å¢žä¸€ä¸ªç©ºçš„å ä½è·¯ç”± & 页é¢
  2. 进入 mometa,查看本地物料,和远端物料市场,选中自己需è¦çš„物料,直接拖拽,基本æˆåž‹çš„页é¢å¸ƒå±€å®Œæˆ
  3. 进入 ideï¼Œå®Œæˆæ•°æ®è”调,数æ®ä¼ é€’等,æºç å¼€å‘

已有历å²é¡¹ç›®ï¼Œéœ€è¦è¿­ä»£åŠŸèƒ½ï¼Œåªåœ¨æŸä¸€å°å— ui 模å—内

  1. 进入 mometa,物料æ“作æ’å…¥
  2. åå‘定ä½ç›´æŽ¥è¿›å…¥ ide æºç å¼€å‘

æ“作演示

编辑

åå‘定ä½

支æŒä»Žè§†å›¾å®šä½ä»£ç ä½ç½®

æ’入物料

å¯è§†åŒ–æ’入物料

删除视图

移动视图

编辑代ç 

预览

物料预览

å“应å¼å¸ƒå±€

路由模拟

如何实现

è§ mometa 实现原ç†

如何使用

安装ä¾èµ–

npm i @mometa/editor -D

使用 antd 物料

  1. 安装 antd 物料
npm i @mometa-mat/antd -D
  1. 在项目根目录中创建 mometa-material.config.js
module.exports = [require('@mometa-mat/antd').default]

你也å¯ä»¥åˆ›å»ºè‡ªå·±çš„物料库,数æ®ç»“æž„è§„åˆ™è§ Material 定义

接入编辑器

webpack.config.js 修改如下:

const MometaEditorPlugin = require('@mometa/editor/webpack')

module.exports = {
  module: {
    rules: [
      {
        test: /\.(js|mjs|jsx|ts|tsx)$/,
        // 注æ„,åªéœ€è¦å¤„ç†ä½ éœ€è¦ç¼–辑的文件目录
        include: paths.appSrc,
        loader: require.resolve('babel-loader'),
        options: {
          plugins: [isEnvDevelopment && require.resolve('@mometa/editor/babel/plugin-react')]
        }
      }
    ]
  },
  plugins: [
    isEnvDevelopment &&
      new MometaEditorPlugin({
        react: true,
        // å¼€å¯ç‰©æ–™é¢„览
        experimentalMaterialsClientRender: true
      })
  ]
}

注æ„:使用时,ä¸éœ€è¦å¼€å¯å®˜æ–¹é¢„设的 react-refresh,mometa é»˜è®¤ä¼šå¼€å¯ react-refresh 能力

å¯åЍ webpack dev serverï¼Œå¼€å¯ http://localhost:${port}/mometa/ å³å¯

æä¾›çš„例å­å¯è§ @mometa/app

NPM 包

快速开始

git clone https://github.com/imcuttle/mometa.git
cd mometa
pnpm install
cd packages/app && pnpm start # 开坿œ¬åœ°å¼€å‘预览模å¼
637D

作者

This library is written and maintained by imcuttle, imcuttle@163.com.

About

🛠 [Beta] é¢å‘ç ”å‘的低代ç å…ƒç¼–程,代ç å¯è§†ç¼–辑,辅助编ç å·¥å…·

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • TypeScript 53.9%
  • JavaScript 43.8%
  • SCSS 1.2%
  • HTML 0.7%
  • Handlebars 0.2%
  • CSS 0.2%
0