Просмотр исходного кода

fix(dashboards): Optional fieldValue for queryField (#32623)

checks fieldValue on render which can sometimes be undefined due to ui.
edwardgou-sentry 3 лет назад
Родитель
Сommit
73419d2ef6
1 измененных файлов с 4 добавлено и 4 удалено
  1. 4 4
      static/app/views/eventsV2/table/queryField.tsx

+ 4 - 4
static/app/views/eventsV2/table/queryField.tsx

@@ -322,14 +322,14 @@ class QueryField extends React.Component<Props> {
     const {fieldValue} = this.props;
     let {fieldOptions} = this.props;
 
-    if (fieldValue.kind === 'function') {
+    if (fieldValue?.kind === 'function') {
       const funcName = `function:${fieldValue.function[0]}`;
       if (fieldOptions[funcName] !== undefined) {
         field = fieldOptions[funcName].value;
       }
     }
 
-    if (fieldValue.kind === 'field') {
+    if (fieldValue?.kind === 'field') {
       field = this.getFieldOrTagOrMeasurementValue(fieldValue.field);
       fieldOptions = this.appendFieldIfUnknown(fieldOptions, field);
     }
@@ -340,7 +340,7 @@ class QueryField extends React.Component<Props> {
       field &&
       field.kind === FieldValueKind.FUNCTION &&
       field.meta.parameters.length > 0 &&
-      fieldValue.kind === FieldValueKind.FUNCTION
+      fieldValue?.kind === FieldValueKind.FUNCTION
     ) {
       parameterDescriptions = field.meta.parameters.map(
         (param, index: number): ParameterDescription => {
@@ -580,7 +580,7 @@ class QueryField extends React.Component<Props> {
 
     const parameters = this.renderParameterInputs(parameterDescriptions);
 
-    if (fieldValue.kind === FieldValueKind.EQUATION) {
+    if (fieldValue?.kind === FieldValueKind.EQUATION) {
       return (
         <Container
           className={className}