Hay un ejemplo:
<template> <h1>hello</h1> </template> <script lang="ts"> import Vue from 'vue' type DataOptions = { name: string age: number flags: { t: number; l: number }[] } export default Vue.extend({ name: 'HelloWorld', data(): DataOptions { return { name: 'zs', age: 18, flags: [] } }, methods: { refresh() { const response = [ { t: 1, l: 1 }, { t: 2, l: 2 } ] this.flags = Object.freeze(response) } } }) </script>Typescript informará: El tipo 'solo lectura { t: número; l: número; }[]' es 'solo lectura' y no se puede asignar al tipo mutable '{ t: string; l: cadena; }[]'.
Haga que sus flags de propiedad de datos sean una matriz de solo lectura para asignarle una respuesta:
type DataOptions = { name: string age: number flags: ReadonlyArray<Record<'t'|'l', number>> }