`napi_throw_type_error`结构中`code`的含义是什么?

问题描述

在 N-API node_api.h 的上下文中,函数 code 的字段 napi_throw_type_error 的主要内容是什么? documentation 只说“要在错误上设置的可选错误代码。”,通常这应该包含什么样的数据?

我的函数在没有这个参数的情况下工作正常,但我想在那里将返回代码作为字符串传递:

napi_value Node_GI_idisplayScript(napi_env env,napi_callback_info info)
{
   napi_status status;
   size_t ulSize;

   size_t argc = 1;
   napi_value argv[4];

   status = napi_get_cb_info(env,info,&argc,argv,NULL,NULL);
   if (status != napi_ok) RETURN_ERROR(status);

   if (argc < 1) {
      napi_throw_type_error(env,"Wrong number of arguments");
      return NULL;
   }

   char szScript[20000];
   status = napi_get_value_string_latin1(env,argv[0],szScript,sizeof(szScript),&ulSize);
   if (status != napi_ok) RETURN_ERROR(status);

   int iRet = GI_idisplayScript(szScript);
   if (iRet) {
      // char szErrorCode[50];
      // sprintf(szErrorCode,"%d",iRet);
      napi_throw_type_error(env,NULL /* szErrorCode */,"Invalid script");
      return NULL;
   }

   napi_value value;
   unsigned char *data;
   status = napi_create_arraybuffer(env,gulSize,(void **) &data,&value);
   if (status != napi_ok) RETURN_ERROR(status);
   memcpy(data,gpvbBmp,gulSize);

   return value;
}

这是可以接受的用途吗?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)