Vue calculado con parámetros (propiedades calculadas)

En los casos oficiales, computerd no tiene atributos.

<div id="example">
  <p>Original message: "{
    
    { message }}"</p>
  <p>Computed reversed message: "{
    
    { reversedMessage }}"</p>
</div>
var vm = new Vue({
    
    
  el: '#example',
  data: {
    
    
    message: 'Hello'
  },
  computed: {
    
    
    // 计算属性的 getter
    reversedMessage: function () {
    
    
      // `this` 指向 vm 实例
      return this.message.split('').reverse().join('')
    }
  }
})

Si ReversedMessage se cambia a un formulario con parámetros.

reversedMessage: function (parameter) 

Luego, al usarlo, se informará un error: ReversedMessage no es una función,
esto se debe a que el valor de retorno es una cadena.

Entonces, si desea tener parámetros, debe modificar ligeramente el mensaje invertido.

 <p>Computed reversed message: "{
    
    { reversedMessage('2333') }}"</p>
 reversedMessage: function () {
    
    
      // `this` 指向 vm 实例
      return (parameter)=>{
    
    
   	   return  this.message.split('').reverse().join('') + parameter
	 } 
    }

De esta manera, el valor de retorno de ReversedMessage es una función anónima y esta función completará el resultado calculado originalmente por ReversedMessage.
Vale la pena señalar que si el parámetro se coloca después del atributo a calcular, se obtendrá la instancia de vm.

reversedMessage: function (parameter) {
    
    
// parameter == vm
}

Supongo que te gusta

Origin blog.csdn.net/qq_42988836/article/details/106542901
Recomendado
Clasificación