Pages: a navigate action in a table's actions column does nothing when pressed (0.45.0)

Cerrado
#714 2 comentarios 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
3/5
Tiempo estimado
1-2 días
Aptitud para principiantes
68/100
Tipo de issue
Error
Claridad
Bien especificado
Estado de actividad
Activo
Stack tecnológico
sqlite, typescript
Área
frontend, web-dev

Línea de trabajo

Start at the table component’s actions-column handling and compare it with the working button component navigation path; the payload does not name source files or tests. Reproduce with the provided YAML using sovrium dev app.yaml, then press Open on a row. Done when it navigates to /items/1 and the action works with the expected link behavior.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

bug:wrong-behaviour domain:pages status:needs-info

Version: 0.45.0 · Binary · SQLite · darwin arm64

What happens

A navigate action in a table column of type: actions does nothing when pressed — no navigation, no request, no console message — with or without openInNewTab. The same action on a button component navigates, and onRowClick navigate works. Alternatives also fail: a button field with action: url does not substitute $record.id / {{id}} (opens a 404), and a formula resultType: url renders as plain text. So there is no way to give a table row a real link (Cmd+click, new tab, accessible name).

Repro
# Minimal repro: a `navigate` action in a table's action column (type: actions) does
# nothing when pressed — no navigation, no request, no console message — with or
# without openInNewTab. The same action on a `button` component navigates. Open
# /items, press "Open" on a row: the URL stays /items (expected /items/1).
name: repro-rowaction
tables:
  - id: 1
    name: items
    fields:
      - { id: 1, name: title, type: single-line-text, required: true }
pages:
  - name: items
    path: /items
    components:
      - type: table
        dataSource: { table: items }
        columns:
          - { field: title }
          - type: actions
            label: Actions
            actions:
              - { label: Open, action: { type: navigate, path: /items/$record.id } }
        rowActions: { display: inline }
  - name: item
    path: /items/:id
    dataSource: { table: items, mode: single, param: id }
    components:
      - { type: text, element: h1, content: $record.title }
  1. sovrium dev app.yaml, open /items.
  2. Press Open on a row: the URL stays /items (expected /items/1).

Expected: navigation to /items/1, ideally rendered as an <a> so it can open in a new tab.

Lenguaje dominante
TypeScript
Estrellas
4
Forks
0
Métricas de merge de PR
Sin PR fusionados en 30 d

Preparar el entorno

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de sovrium/sovrium

Todos los issues de sovrium/sovrium

Issues similares

Más issues de TypeScript

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.