app-build-server

app-build-server server for cli

Usage no npm install needed!

<script type="module">
  import appBuildServer from 'https://cdn.skypack.dev/app-build-server';
</script>

README

第一次使用,创建helloworld

1、安装依赖 cnpm i
2、创建项目 npm run project [demoName] 如: helloworld
3、npm run switch 设置或切换当前项目
4、启动 npm run dev
5、可直接访问网址: http://localhost:8080/#/[pageName] (页面名称如果是驼峰会统一转成中划线形式: myPage => my-page)
6、编译 npm run dist

使用指令

开发
    npm run dev
    npm run start
编译
    npm run build(使用hashchunk方案)
    npm run build:lib(独立抽取基础包作为长缓存方案)
    或
    npm run dist
    npm run dist:lib
项目切换
    npm run switch
模版工程构建
    npm run project [name]
    或
    npm run create:project [name]
创建针对每个项目独立的webpack.config.js(钩子模式)模版,可以配置每个项目自己的特殊配置
    npm run webpack
    或
    npm run create:webpack
推送至开发服务器ftp,需要在本地配置用户登录信息,模版在.build/code/files/sftp.json文件
    npm run ftp

启动项配置

app.config.js文件 current 属性
手动: 项目对应src文件夹中的名称, 且必须跟src目录中的文件夹名称保持一致性
自动: npm run switch

项目独立控制

每个工程目录下 app.config.js 文件
path: 项目对应src文件夹中的名称
esLint: 是否开启eslint
distPath: 编译后相对于dist目录的地址 如'www/uapp'最终会编译至'dist/www/uapp'

跨项目引用别名

项目中使用@可以直接定位到当前项目到路径中,如@ => /src/项目名/,使用(@ + 其他项目名)可以指向到任何项目目录下,获取其他项目的资源。
注意:如果引用主框架维护的基础包会被直接引用至根目录的node_modules,跳过子项目自身的node_modules