vue watch可以检测外部js文件属性吗?

时间:2018-02-13 08:30:27

标签: javascript vuejs2

  
    

外部js文件,通过单击更改属性的值       事件,但它如何检测此属性自更改以来已更改       vue页面使用了这个属性值?

  
     

1.External js

                var obj = {},initValue = true;
                Object.defineProperty(obj, "newKey", {
                  get: function () {
                    return initValue;
                  },
                  set: function (value) {
                    return initValue = value;
                  }
                });
                var con=function () {
                  document.getElementById('btncc').onclick = function () {
                    setTimeout(() => {
                      console.log(obj.newKey)
                    }, 3000)
                   initValue = false;
                  }

                }
                export default {
                  con,obj
                }
            > 2.vue page
    > Change the style
        <input id="color" type="color" :class="obj ? 'transparent': 'transparent2'" :disabled ="obj"/>
             import Canvas from '../../Api/js'
              export default {
                name: 'HelloWorld',
                data () {
                  return {
                      obj:Canvas.obj.newKey
                  }
                },
                mounted () {
                  Canvas.con()
                  console.log(this.obj,'我是msg啊');
                },
                watch: {
                  [Canvas.obj.newKey] (val) {
                    if(val){
                      console.log(this.obj,'我改变了吗,');
                    }
                  }
                }
              }
  

注意没效果。   可能是这样的。    https://jsfiddle.net/qjwanglei/L5afz75t/3/

0 个答案:

没有答案