@mega-apps/cli
v1.3.6-beta.5
Published
Mom builder for all mega modules apps. The recommended basic operation dependency package is attached, and users can check and repair defects in actual applications.
Downloads
46
Maintainers
Readme
@mega-apps/cli
Mom Web 应用统一构建工具
附带推荐的基础运行依赖包,开发者可以在实际使用中查缺补漏。
特性
- [x] 重点支持使用
Nuxt脚手架
创建的项目(附带推荐依赖包) - [x] 支持使用
VueCLI脚手架
创建的项目(不附带依赖包) - [x] 自动识别
Nuxt项目
及VueCLI项目
- [x] 注入
VueLoader
, 实现 Vue 开启组件名称自动命名与开发环境统一。 - [x] 注入
Vue补丁
, 实现嵌套子布局路由正常(Keepalive情况下)。 - [x] 注入
Module.prototype.require
, 兼容依赖包查找 - [x] 注入项目规范检测及修补机制
- [x] 依赖安装加速控制(.npmrc, .yarnrc) 适用于npm中国镜像站
- [x] 推荐使用
Yarn
或者pnPm
来管理依赖 - [x] 集成项目、代码规范依赖;如:
ls-lint
,eslint
,stylelint
, ... - [x] 集成
Jest
,Playwright
,Vitest
等测试框架 - [x] 集成
TypeScript
引擎 - [x] 集成
TailwindCSS
,PostCSS
,LESS
,SASS
等引擎 - [x] 集成
@types
类型库 - [x] 集成
Nuxtjs
>= 2.15.8,Nuxt Libs
常用库: https://modules.nuxtjs.org/ - [x] 集成适用于
Webpack
,Vite
常用构建工具 - [x] 集成各种
Mock
工具,支持HTTP/HTTPS
,WebSocket
,Native Mock
- [x] 集成
MegaMom
平台的各种插件/库/模块. 如:@mega-apps/nuxt-plugin-mom
安装
# 推荐使用 Yarn 来安装依赖
yarn add @mega-apps/cli --dev
# 或使用 pnPm 安装依赖
pnpm add -D @mega-apps/cli
配置
// package.json 文件
{
// 修改 package.json 中的配置
// ...
"scripts": {
"dev": "mom",
"build": "mom generate"
// ...
},
}
应用
如何扩展 nuxt.config.js
// "@mega-apps/cli" 提供了 nuxtConfigExtend 函数 及 momMerge 函数
// momMerge 函数的原型:
// import momMerge from "deepmerge";
// export { momMerge };
import { nuxtConfigExtend, momMerge } from "@mega-apps/cli";
默认提供了基础的nuxt.config 配置
// 引入基础的nuxt.config.配置
import { generateBaseConfig, def } from "@mega-apps/cli/config/nuxt.config";
如何生成一个新的配置
// 引入基础的nuxt.config.配置
import { generateBaseConfig, def } from "@mega-apps/cli/config/nuxt.config";
// def 函数,是一个兼容的快捷定义函数
const baseCfg = generateBaseConfig({
supportESLint: false,
supportStyleLint: false,
supportTypeScript: false,
supportTailwindCSS: false,
});
// 构造新的 nuxt.config
const config = nuxtConfigExtend([
{},
def(1, {})
], baseCfg);
// 导出配置
export default config;
如何对node-sass 进行配置
import {getDefaultSassImplementation } from "@mega-apps/cli/config/nuxt.config";
/**
* 获得默认的Sass解析器
* @param defaultPkg, 默认值:node-sass, 可选值:sass
* @returns module.exports
* @note 关于node-sass的版本要根据nodejs的版本指定,参见:https://www.npmjs.com/package/node-sass 内的版本号对应说明
*
如何查看基础的配置内容
基础配置存放到: "@mega-apps/cli/config/nuxt.config.js"