首先在 src/layouts/BasicLayout/menuConfig.ts
中增加以下的内容:
export const asideMenuConfig = [
{
name: ‘Home’,
path: ‘/’,
- auth: [‘guest’]
},
];
然后在 src/layouts/BasicLayout/components/PageNav/index.tsx
中[配置](菜单配置 | 飞冰 (ice.work))
===================================================================
只希望在开发环境中打印日志,在生产环境中则不打印日志,或者设置日志的级别,避免生产环境的调试日志在生产环境中出现
日志分类#
框架日志分为 TRACE、DEBUG、INFO、WARN、ERROR 和 SILENT 6 个级别,分别在不同的场景下使用:
-
logger.trace(msg)
:输出一个堆栈跟踪 -
logger.debug(msg)
:输出一个调试日志 -
logger.info(msg)
:输出一个信息日志 -
logger.warn(msg)
:输出一个警告日志 -
logger.error(msg)
:输出一个错误日志
使用#
import { logger } from ‘ice’;
logger.info(‘== info ==’);
level#
在某些场景下也可在 src/config.ts
中根据不同环境配置 loglevel:
export default {
default: {
loglevel: ‘warn’
},
production: {
loglevel: ‘error’
}
}
在 src/app.ts
中将配置的 loglevel 传递给 logger:
import { runApp, config } from ‘ice’;
// 用于配置
const appConfig = {
logger: {
level: config.loglevel
}
};
runApp(appConfig);
===================================================================
icejs 支持区分不同环境,开发者可根据环境区分工程配置以及运行时配置。常见场景:
-
多套构建环境,每个环境的工程配置不一样
-
应用运行时的一些配置项需要根据环境切换
通过命令行参数可以设置不同的环境,默认情况下支持 start/build
两个环境,对应的即 icejs start/build
两个命令,开发者可以通过 --mode
参数来扩展环境:
{
“scripts”: {
“start”: “icejs start --mode local”,
“build:daily”: “icejs build --mode daily”,
“build”: “icejs build --mode prod”
}
}
区分工程配置#
在定义好环境之后,即可在 build.json
中通过 modeConfig
来根据环境区分配置了:
{
“alias”: {},
“modeConfig”: {
“daily”: {
“define”: {},
“vendor”: false
},
“prod”: {
“define”: {},
“vendor”: true,
“plugins”: [“build-plugin-esbuild”]
}
}
}
同时在本地插件 build.plugin.js
也可以从 context 上获取到当前 mode:(没有用到这个插件)
module.exports = ({ context }) => {
const { command, commandArgs } = context;
const mode = commandArgs.mode || command;
};
区分运行时配置#
在定义好环境之后,前端代码中即可通过 APP_MODE
拿到当前环境:
import { APP_MODE } from ‘ice’;
console.log(‘APP_MODE’, APP_MODE);
当然大多数时候你都不需要关心 APP_MODE
这个变量,只要按照约定的方式区分不同环境的配置即可。在 src/config.ts
中编写不同环境的配置:
// src/config.ts
export default {
// 默认配置
default: {
appId: ‘123’,
baseURL: ‘/api’,
},
local: {
appId: ‘456’,
},
daily: {
appId: ‘789’,
},
prod: {
appId: ‘101’,
},
};
配置之后框架会自动根据当前环境将配置进行合并覆盖,开发者只需要在代码中直接使用 config
即可:
最后
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数初中级Android工程师,想要提升技能,往往是自己摸索成长,自己不成体系的自学效果低效漫长且无助。
因此收集整理了一份《2024年Web前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点!不论你是刚入门Android开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门!
如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
6051)]
[外链图片转存中…(img-dW8PoZ4I-1715457256051)]
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点!不论你是刚入门Android开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门!
如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!