Delen via


MessagingError class

Beschrijft de basisklasse voor berichtfout.

Uitbreiding

Error

Constructors

MessagingError(string, Error)

Eigenschappen

address

Adres waarnaar de netwerkverbinding is mislukt. Alleen aanwezig als de MessagingError is geïnstantieerd met een Node.js SystemError.

code

Een tekenreekslabel waarmee de fout wordt geïdentificeerd.

errno

Door het systeem verstrekte foutnummer. Alleen aanwezig als de MessagingError is geïnstantieerd met een Node.js SystemError.

info

Extra details over de fout.

name

De naam van de fout. Standaardwaarde: "MessagingError".

port

De poort voor de niet-beschikbare netwerkverbinding. Alleen aanwezig als de MessagingError is geïnstantieerd met een Node.js SystemError.

retryable

Beschrijft of de fout opnieuw kan worden geprobeerd. Standaard: waar.

syscall

Naam van de systeemoproep die de fout heeft geactiveerd. Alleen aanwezig als de MessagingError is geïnstantieerd met een Node.js SystemError.

Overgenomen eigenschappen

message
stack
stackTraceLimit

De Error.stackTraceLimit eigenschap geeft het aantal stackframes aan dat wordt verzameld door een stacktrace (gegenereerd door new Error().stack of Error.captureStackTrace(obj)).

De standaardwaarde is 10 , maar kan worden ingesteld op elk geldig JavaScript-nummer. Wijzigingen zijn van invloed op elke stacktrace die wordt vastgelegd nadat de waarde is gewijzigd.

Als ze zijn ingesteld op een niet-getalwaarde of op een negatief getal, worden er geen frames vastgelegd.

Overgenomen methoden

captureStackTrace(object, Function)

Hiermee maakt u een .stack eigenschap op targetObject, die bij het openen een tekenreeks retourneert die de locatie vertegenwoordigt in de code waarop Error.captureStackTrace() is aangeroepen.

const myObject = {};
Error.captureStackTrace(myObject);
myObject.stack;  // Similar to `new Error().stack`

De eerste regel van de trace wordt voorafgegaan door ${myObject.name}: ${myObject.message}.

Het optionele constructorOpt argument accepteert een functie. Als ze worden gegeven, worden alle bovenstaande constructorOptframes , inclusief constructorOpt, weggelaten uit de gegenereerde stacktrace.

Het constructorOpt argument is handig om implementatiedetails van het genereren van fouten voor de gebruiker te verbergen. Bijvoorbeeld:

function a() {
  b();
}

function b() {
  c();
}

function c() {
  // Create an error without stack trace to avoid calculating the stack trace twice.
  const { stackTraceLimit } = Error;
  Error.stackTraceLimit = 0;
  const error = new Error();
  Error.stackTraceLimit = stackTraceLimit;

  // Capture the stack trace above function b
  Error.captureStackTrace(error, b); // Neither function c, nor b is included in the stack trace
  throw error;
}

a();
prepareStackTrace(Error, CallSite[])

Zie https://v8.dev/docs/stack-trace-api#customizing-stack-traces

Constructordetails

MessagingError(string, Error)

new MessagingError(message: string, originalError?: Error)

Parameters

message

string

Het foutbericht met meer informatie over de fout.

originalError

Error

Een fout waarvan de eigenschappen worden gekopieerd naar messagingError als de eigenschap overeenkomt met de eigenschap die is gevonden op de Node.js SystemError.

Eigenschapdetails

address

Adres waarnaar de netwerkverbinding is mislukt. Alleen aanwezig als de MessagingError is geïnstantieerd met een Node.js SystemError.

address?: string

Waarde van eigenschap

string

code

Een tekenreekslabel waarmee de fout wordt geïdentificeerd.

code?: string

Waarde van eigenschap

string

errno

Door het systeem verstrekte foutnummer. Alleen aanwezig als de MessagingError is geïnstantieerd met een Node.js SystemError.

errno?: string | number

Waarde van eigenschap

string | number

info

Extra details over de fout.

info?: any

Waarde van eigenschap

any

name

De naam van de fout. Standaardwaarde: "MessagingError".

name: string

Waarde van eigenschap

string

port

De poort voor de niet-beschikbare netwerkverbinding. Alleen aanwezig als de MessagingError is geïnstantieerd met een Node.js SystemError.

port?: number

Waarde van eigenschap

number

retryable

Beschrijft of de fout opnieuw kan worden geprobeerd. Standaard: waar.

retryable: boolean

Waarde van eigenschap

boolean

syscall

Naam van de systeemoproep die de fout heeft geactiveerd. Alleen aanwezig als de MessagingError is geïnstantieerd met een Node.js SystemError.

syscall?: string

Waarde van eigenschap

string

Details van overgenomen eigenschap

message

message: string

Waarde van eigenschap

string

overgenomen van Error.message

stack

stack?: string

Waarde van eigenschap

string

overgenomen van Error.stack

stackTraceLimit

De Error.stackTraceLimit eigenschap geeft het aantal stackframes aan dat wordt verzameld door een stacktrace (gegenereerd door new Error().stack of Error.captureStackTrace(obj)).

De standaardwaarde is 10 , maar kan worden ingesteld op elk geldig JavaScript-nummer. Wijzigingen zijn van invloed op elke stacktrace die wordt vastgelegd nadat de waarde is gewijzigd.

Als ze zijn ingesteld op een niet-getalwaarde of op een negatief getal, worden er geen frames vastgelegd.

static stackTraceLimit: number

Waarde van eigenschap

number

overgenomen van Error.stackTraceLimit

Details overgenomen methode

captureStackTrace(object, Function)

Hiermee maakt u een .stack eigenschap op targetObject, die bij het openen een tekenreeks retourneert die de locatie vertegenwoordigt in de code waarop Error.captureStackTrace() is aangeroepen.

const myObject = {};
Error.captureStackTrace(myObject);
myObject.stack;  // Similar to `new Error().stack`

De eerste regel van de trace wordt voorafgegaan door ${myObject.name}: ${myObject.message}.

Het optionele constructorOpt argument accepteert een functie. Als ze worden gegeven, worden alle bovenstaande constructorOptframes , inclusief constructorOpt, weggelaten uit de gegenereerde stacktrace.

Het constructorOpt argument is handig om implementatiedetails van het genereren van fouten voor de gebruiker te verbergen. Bijvoorbeeld:

function a() {
  b();
}

function b() {
  c();
}

function c() {
  // Create an error without stack trace to avoid calculating the stack trace twice.
  const { stackTraceLimit } = Error;
  Error.stackTraceLimit = 0;
  const error = new Error();
  Error.stackTraceLimit = stackTraceLimit;

  // Capture the stack trace above function b
  Error.captureStackTrace(error, b); // Neither function c, nor b is included in the stack trace
  throw error;
}

a();
static function captureStackTrace(targetObject: object, constructorOpt?: Function)

Parameters

targetObject

object

constructorOpt

Function

overgenomen van Error.captureStackTrace

prepareStackTrace(Error, CallSite[])

Zie https://v8.dev/docs/stack-trace-api#customizing-stack-traces

static function prepareStackTrace(err: Error, stackTraces: CallSite[]): any

Parameters

err

Error

stackTraces

CallSite[]

Retouren

any

overgenomen van Error.prepareStackTrace