跳到主要内容

开发环境错误日志提示

@cloudbase/js-sdk 在开发环境下会将调用 API 的错误信息以更友好的方式打印到控制台:

图中打印的错误是当前的登录类型受到函数的安全规则限制,导致没有调用函数的权限。错误信息分为两部分:

  1. 上半部分的黑色字体提示包含了后端 API 返回的错误信息以及基于此报错的解决方案提示
  2. 下半部分的红色字体是经优化后的错误堆栈,由于原始错误堆栈层次太深导致 debug 困难,此处打印的错误堆栈第一条直接定位到 SDK 源码,第二条定位到调用报错 API 的业务源码

优化的错误提示仅在开发环境中使用,根据 process.env.NODE_ENV 判断是否为开发环境。定位到 SDK 源码需要借助 SourceMap。

以上功能依赖构建工具的部分特性,目前仅支持 Webpack 和 Rollup。

Webpack 4+ 版本配置:

module.exports = {
mode: "development",
};

旧版本 Webpack 配置:

const webpack = require("webpack");

module.exports = {
plugins: [
new webpack.DefinePlugin({
"process.env.NODE_ENV": JSON.stringify("development"),
}),
// ...其他插件
],
// ...其他配置
};

添加 sourcemap 预处理:

module.exports = {
module: {
rules: [
{
test: /\.js$/,
enforce: "pre",
use: ["source-map-loader"],
},
// ...其他rules
],
},
// ...其他配置
};

配置完成后启动 webpack-dev-server 即可。