Vue: Permitir definir dependencia de inyección opcional con valores predeterminados

Creado en 13 jul. 2017  ·  3Comentarios  ·  Fuente: vuejs/vue

¿Qué problema resuelve esta función?

En el caso de componentes que pueden funcionar tanto como independientes como secundarios, sería bueno poder proporcionar valores predeterminados para las dependencias no proporcionadas.
También evitaría la advertencia por falta de inyección en caso de que este sea uno de los casos de uso esperados.

¿Cómo se ve la API propuesta?

inyectar: ​​Matriz| {[clave: cadena]: cadena | Símbolo | {nombre: cadena | Símbolo, predeterminado: cualquiera}}

feature request in review

Comentario más útil

Estoy trabajando en una biblioteca de componentes que utiliza proporcionar e inyectar para que ciertos componentes se comporten / se vean de manera ligeramente diferente en el contexto de otro componente de la biblioteca. Dado que nuestros componentes son utilizados por otros ingenieros para el desarrollo, las advertencias de que no se encontró la inyección siguen apareciendo en su entorno.

Me encantaría que se implementara esta función. Y para agregarle, como se menciona en https://github.com/vuejs/vue/issues/6137 , me gustaría ver un atributo required para indicar si una inyección es obligatoria u opcional.

Todos 3 comentarios

Lo mismo ocurre con esta solicitud. Lo que normalmente me encuentro haciendo es anular la propiedad inyectada como datos para proporcionar un valor predeterminado:

inject: [
  'foo'
],
data () {
  return {
    foo: this.foo || 'default'
  }
}

También soy +1 para esta función. Actualmente tengo componentes que están anidados entre sí y los padres brindan información a los niños. La advertencia siempre aparece para el componente raíz, ya que no tiene un proveedor para la propiedad inyectada.

Caso de uso específico: divisores de diseño anidados.

Estoy trabajando en una biblioteca de componentes que utiliza proporcionar e inyectar para que ciertos componentes se comporten / se vean de manera ligeramente diferente en el contexto de otro componente de la biblioteca. Dado que nuestros componentes son utilizados por otros ingenieros para el desarrollo, las advertencias de que no se encontró la inyección siguen apareciendo en su entorno.

Me encantaría que se implementara esta función. Y para agregarle, como se menciona en https://github.com/vuejs/vue/issues/6137 , me gustaría ver un atributo required para indicar si una inyección es obligatoria u opcional.

¿Fue útil esta página
0 / 5 - 0 calificaciones

Temas relacionados

julianxhokaxhiu picture julianxhokaxhiu  ·  3Comentarios

franciscolourenco picture franciscolourenco  ·  3Comentarios

gkiely picture gkiely  ·  3Comentarios

lmnsg picture lmnsg  ·  3Comentarios

bdedardel picture bdedardel  ·  3Comentarios