还是做回自己博客发布系统的练习项目,结果一不小心掉到自己的坑里。

先看报错:

[Vue warn]: Property or method "verify" is not defined on the instance but referenced during render. Make sure that this property is reactive, either in the data option, or for class-based components, by initializing the property. See: https://vuejs.org/v2/guide/reactivity.html#Declaring-Reactive-Properties.

翻译了一下,大约就是说我没定义"verify" 这个属性,然后我就看我的js代码,用到verify的地方。

vue = new Vue({
            el:'#app',
            data:{
                params:{
                    name:'',
                    password:'',
                    verify:false,//验证码通过
                    isSubmit:false
                }
            },
            methods:{
                login:bind.__login
            }

        });
 $('#mpanel1').slideVerify({
            type : 1,		//类型
            vOffset : 5,	//误差量,根据需求自行调整
            barSize : {
                width : '100%',
                height : '38px',
            },
            success : function() {
                vue.params.verify = true;
            }
        });

莫非是vue.params.verify这样赋值不正确?

然后看了一下文档,我定义的属性要想修改之后同步更新到页面上,需要用以下这样写:

vue.params = Object.assign({}, vue.params, { verify:true }); //方法1
vue.$set(vue.params, 'verify', true); //方法2

然而当我开心的撸上解决方法,然而还报错!!!!!

然后又经过一番尝试,报错依旧,没理由啊!!?我按着文档来的。

然后我把js中提及这个单词的地方全删了,还是报这个错,直到这时我突然想到什么:

鬼使神差地点开了这里:

我Σ(⊙▽⊙"a,这个地方不就是我的html.

 

呜呜呜,浪费了好多时间,终于找到问题所在,下次绝对不能再跳进这个可坑了。

 

Logo

前往低代码交流专区

更多推荐