Methods Vue js:是否可以通过方法初始化数据?

Methods Vue js:是否可以通过方法初始化数据?,methods,vuejs2,initialization,Methods,Vuejs2,Initialization,基本上,我想通过比较两个值来初始化表单上的vValidNombre字段,因此最好使用如下方法: <script type="text/javascript"> var avatar = new Vue({ el: '#validaciones', data: { vNombre: $('input[name=nombre]').val(), vValidNombre: validar(), }, methods: {

基本上,我想通过比较两个值来初始化表单上的vValidNombre字段,因此最好使用如下方法:

<script type="text/javascript">
  var avatar = new Vue({
    el: '#validaciones',
    data: {
      vNombre: $('input[name=nombre]').val(),
      vValidNombre: validar(),
    },
    methods: {
      validar: function(){
        if ('true' == 'true') {
          return = true;
        }
        else {
          return false;
        }
      }
    }
  })
</script>

var avatar=新Vue({
el:“#validaciones”,
数据:{
vNombre:$('input[name=nombre]')。val(),
vValidNombre:validar(),
},
方法:{
validar:function(){
如果('true'='true'){
返回=真;
}
否则{
返回false;
}
}
}
})
这段代码不起作用,但有可能做类似的事情吗


编辑:我使用的是Vue 2,其实不是。初始化时,
vValidNombre
将未定义。但是,您可以使用
ready
方法执行以下操作:

var avatar = new Vue({
    el: '#validaciones',
    data: {
        vNombre: $('input[name=nombre]').val(),
        vValidNombre: null,
    },

    ready: function() {
        this.vValidNombre = this.validar();
    }

    methods: {
      validar: function(){
          // do something here
          // and return it
      },

      bindDom: function() {

      } 
    },

})

此解决方案可以工作,但由于我使用的是Vue 2,因此该方法称为mount而不是ready。为什么是bindDom()?我通常使用bindDom来绑定DOM元素。您可以对逻辑进行更多的控制。有趣的是,这在组件中非常有效,而不是在视图中。