Skip to content

Latest commit

 

History

History
123 lines (97 loc) · 6.06 KB

config.md

File metadata and controls

123 lines (97 loc) · 6.06 KB

项目目录说明和配置指南


项目目录说明

ios-scriptable-tsx
├── .vscode                 // vscode 配置
├── 打包好的成品             // 可以粘贴到 scriptable 运行的成品
├── docs                    // 文档
├── src                     // 代码目录
│   ├── lib                 // 本项目主要文件存放处,请勿挪动
│   │   └── static          // 存放开发引导文件的文件夹
│   │   └── basic           // 基础包源码
│   │   └── compile.ts      // 打包脚本,请勿随意更改
│   │   └── constants.ts    // 常量
│   │   └── env.ts          // 加载 dotenv 文件的脚本
│   │   └── help.ts         // 常用 api 函数封装
│   │   └── jsx-runtime.ts  // tsx、jsx 编译后解释回 scriptable api 的文件
│   │   └── server.ts       // 开启监听服务器,用于手机代码同步
│   ├── scripts             // 开发者存放小组件源代码的目录
│   └── types               // 存放类型声明目录
│   │   └── widget          // 存放 jsx、tsx element 可接收参数类型的目录
│   └── index.ts            // 打包主入口文件
├── .editorconfig           // 编辑器配置
├── .env                    // dotenv 文件,打包就加载进环境变量
├── .env.development        // dotenv 文件,开发环境时,加载进环境变量
├── .env.production         // dotenv 文件,生产环境时,加载进环境变量
├── .eslintrc.js            // eslint 配置,统一代码风格
├── .gitignore              // gitignore 文件
├── nodemon.json            // nodemon监听配置,在 watch 下生效
├── package.json            // 项目信息、依赖声明文件
├── prettier.config.js      // prettier 配置,用于美化、对齐代码
├── README.md               // 文档
├── scriptable.config.js    // scriptable 打包配置
└── tsconfig.json           // TypeScript 编译选项

scriptable.config.js 打包配置

属性 类型 必填 默认 描述
rootPath string ./ 项目根目录, 不建议修改
inputFile string ./src/index.ts 输入文件,当执行编译时生效,不建议修改
inputDir string ./src/scripts/ 输入文件夹,当执行批量编译时生效,不建议修改
outputDir string ./dist/ 输出文件夹,不建议修改
minify boolean 开发环境为false,生存环境为true 是否压缩代码
encrypt boolean 开发环境为false,生存环境为true 是否加密代码
header string 往编译后的代码头部插入的代码(一般是作者信息)
esbuild object esbuild 自定义配置
encryptOptions object javascript-obfuscator 自定义配置(加密代码配置)

其他配置

配置文件名 用途
.editorconfig 统一各个编辑器编辑风格(可删)
.eslintrc.js 定义代码规范(可删)
prettier.config.js 自动对齐、美化代码用(可删)
tsconfig.json typescript配置文件 (不可删)

环境变量配置

ios-scriptable-tsx 提供两个环境模式,开发环境 development 模式和生产环境 production模式 ,你可以用代码 process.env.NODE_ENV 获取到这个值。你可以在项目根目录下的 package.json 文件里的 scripts 看到他们是怎么传进去的。

npm run watch 		#development开发环境
npm run dev 		#development开发环境
npm run dev:all		#development开发环境
npm run build		#production生产环境
npm run build:all	#production生产环境

本项目集成了dotenv,你可以替换你的项目根目录中的下列文件来指定环境变量(如果你用过 vue-cli 你会很熟悉它):

.env                # 在所有的环境中被载入
.env.local          # 在所有的环境中被载入,但会被 git 忽略
.env.[mode]         # 只在指定的模式中被载入
.env.[mode].local   # 只在指定的模式中被载入,但会被 git 忽略

一个环境文件只包含环境变量的“键=值”对:

FOO=bar
HELLO=你好

环境变量将会载入挂载到 process.env 上。例如在打包时,process.env.FOO将会被替换成字符串 barprocess.env.HELLO将会被替换成字符串你好。被载入的变量将会对./src 目录下的所有代码可用。


当为development开发环境打包时,下面的文件会被依次载入:

.env 
.env.local
.env.development
.env.development.local

当为production生产环境打包时,下面的文件会被依次载入:

.env 
.env.local
.env.production
.env.production.local