Skip to content

feat: 新增 HBuilderX uni-app Tailwind 演示#882

Open
sonofmagic wants to merge 13 commits into
nextfrom
codex/demo-uni-hbuilderx-direct
Open

feat: 新增 HBuilderX uni-app Tailwind 演示#882
sonofmagic wants to merge 13 commits into
nextfrom
codex/demo-uni-hbuilderx-direct

Conversation

@sonofmagic
Copy link
Copy Markdown
Owner

@sonofmagic sonofmagic commented May 28, 2026

摘要

  • 新增 4 个 HBuilderX 演示项目,覆盖 uni-app Vite Vue 3 与 uni-app x 的 Tailwind CSS v3/v4 场景。
  • 每个演示都直接注册 weapp-tailwindcss,不接入官方 Tailwind PostCSS/Vite 生成插件。
  • 导出 hbuilderx preset,并补强 uni-app x/HBuilderX 的 CJS 兼容,以及 Tailwind v4 Web/H5 的 source candidate 扫描。
  • 将已被 tsdown alwaysBundle 且不暴露给消费者的实现依赖下移到 devDependencies,覆盖 weapp-tailwindcss@weapp-tailwindcss/postcss@weapp-tailwindcss/typography@weapp-tailwindcss/debug-uni-app-x@weapp-tailwindcss/logger@weapp-tailwindcss/sharedtailwindcss-config
  • tailwindcss-config 保留 jiti 为运行期依赖;@weapp-tailwindcss/shared 保留 defuget-valueset-value 为运行期依赖,因为它们属于公开导出类型/接口的一部分。
  • 新增本地专用 HBuilderX E2E:pnpm e2e:hbuilderx:local。该流程通过 E2E_HBUILDERX_LOCAL=1 显式开启,不接入 CI/CD,因为 CI 环境无法安装 HBuilderX。
  • 已新增 major changeset:.changeset/major-hbuilderx-bundled-deps.md

HBuilderX 本地 E2E 覆盖

  • 通过 HBuilderX CLI 编译 4 个 demo 的微信小程序产物:
    • uni-app-vite-vue3-hbuilderx-tailwindcss-v3
    • uni-app-vite-vue3-hbuilderx-tailwindcss-v4
    • uni-app-x-hbuilderx-tailwindcss-v3
    • uni-app-x-hbuilderx-tailwindcss-v4
  • 校验 unpackage/dist/dev/mp-weixin 下的小程序产物、app.wxss 中的 Tailwind 转译结果,以及不残留 Tailwind 原始指令。
  • 对两个 uni-app Vite Vue 3 HBuilderX demo 跑 Web/H5 本地 dev server,并用 Playwright 打开真实浏览器页面,校验初始 CSS 与文件变更后的 HMR CSS 更新。
  • 本地默认会优先使用 HBUILDERX_CLI_PATH,macOS 下 fallback 到 /Applications/HBuilderX.app/Contents/MacOS/cli;浏览器优先使用 Playwright 可用浏览器,macOS 下可 fallback 到系统 Chrome。

验证

  • pnpm --filter weapp-tailwindcss build
  • pnpm --filter @weapp-tailwindcss/postcss test
  • pnpm --filter weapp-tailwindcss exec vitest run test/presets/hbuilderx.test.ts test/presets/uni-app-x.test.ts test/bundlers/vite-plugin.bundle.unit.test.ts test/v5/vite-generator.bundle.test.ts --testNamePattern "hbuilderx preset|uni-app-x preset|Tailwind v4 web generator buildStart|v4 source candidates|dev hmr adds arbitrary value"
  • node -e "require('./packages/weapp-tailwindcss/dist/presets.js'); require('./packages/weapp-tailwindcss/dist/vite.js'); require('./packages/postcss/dist/index.js'); console.log('cjs-load-ok')"
  • pnpm --filter @weapp-tailwindcss/typography build && pnpm --filter @weapp-tailwindcss/typography test && pnpm --filter @weapp-tailwindcss/typography tsd
  • pnpm --filter @weapp-tailwindcss/debug-uni-app-x build && pnpm --filter @weapp-tailwindcss/debug-uni-app-x tsd
  • pnpm exec vitest run test/index.test.ts(在 packages/debug-uni-app-x 目录执行)
  • pnpm --filter tailwindcss-config build && pnpm --filter tailwindcss-config test
  • pnpm --filter @weapp-tailwindcss/logger build && pnpm --filter @weapp-tailwindcss/logger test
  • pnpm --filter @weapp-tailwindcss/shared build && pnpm --filter @weapp-tailwindcss/shared test
  • pnpm exec changeset status --since origin/next --verbose
  • pnpm exec eslint e2e/hbuilderx-local.test.ts e2e/hbuilderx-local/*.ts package.json
  • pnpm exec vitest run -c ./e2e/vitest.e2e.config.ts e2e/hbuilderx-local.test.ts(默认跳过:1 个文件 skipped,6 个用例 skipped)
  • HBUILDERX_CLI_PATH=/Applications/HBuilderX.app/Contents/MacOS/cli pnpm e2e:hbuilderx:local(通过:1 个文件 passed,6 个用例 passed)
  • 已验证下移的 bundled 依赖不会在对应 dist 中作为外部 import/require 出现。
  • 已验证 HBuilderX Web v3/v4 启动、v4 任意值颜色 CSS 生成,以及 CSS-only HMR。
  • 已验证 4 个演示项目的 HBuilderX mp-weixin 编译和运行日志。

备注

  • uniappx-project skill 已全局安装到 ~/.codex/skills/uniappx-project
  • 已移除 demo 项目里的内嵌 .agents 副本。

@changeset-bot
Copy link
Copy Markdown

changeset-bot Bot commented May 28, 2026

🦋 Changeset detected

Latest commit: 0b8c61a

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 13 packages
Name Type
weapp-tailwindcss Major
@weapp-tailwindcss/postcss Major
@weapp-tailwindcss/typography Major
@weapp-tailwindcss/debug-uni-app-x Major
@weapp-tailwindcss/logger Major
@weapp-tailwindcss/shared Major
tailwindcss-config Major
@weapp-tailwindcss/build-all Patch
@weapp-tailwindcss/experimental Patch
@weapp-tailwindcss/init Patch
tailwindcss-injector Patch
weapp-style-injector Patch
wetw Patch

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@sonofmagic sonofmagic changed the base branch from main to next May 28, 2026 13:10
@sonofmagic sonofmagic changed the title feat: add HBuilderX uni-app Tailwind demos feat: 新增 HBuilderX uni-app Tailwind 演示 May 28, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant