v6
8/12/2020 by jods -00
disable setup HTML
Setup HTML
<script src="https://unpkg.com/@vue/reactivity@3.0.0-rc.5/dist/reactivity.global.prod.js"></script>
disable setup JavaScript
Setup JavaScript
const { ref, trigger, track } = VueReactivity;

let r1 = ref(0);

let r2 = (function(val) { 
  const r = { isRef: true };
  Object.defineProperty(r, "value", {
    get() { track(this, "GET", "value"); return val; }, 
    set(v) { val = v; trigger(this, "value", v); }, 
  });
  return r;
})(0);

let r3 = (function (val) {
  const ref = function (v) {
    if (!arguments.length) {
      track(ref, "GET", "value");
      return val;
    } else {
      val = v;
      trigger(ref, "value", v);
    }
  };
  Object.defineProperty(ref, "value", {
    get: ref,
    set: ref,
    reconfigurable: false
  });
  ref.isRef = true;
  return ref;
})(0);


let r4 = new class {
  constructor(v) {
    this.val = v;
  }
  get value() {
    track(this, "GET", "value");
    return this.val;
  }
  set value(v) {   
    this.val = v;
    trigger(this, "value", v);
  }
  get isRef() { return true; }
}(0);

let r5 = Object.create({
  get value() {
    track(this, "GET", "value");
    return this.val;
  },
  set value(v) {   
    this.val = v;
    trigger(this, "value", v);
  },
  get isRef() { return true; }
});
r5.val = 0;
delete caserun single casemove downdrag and drop case


ready



r1.value++;
delete caserun single casemove upmove downdrag and drop case


ready



r2.value++;
delete caserun single casemove upmove downdrag and drop case


ready



r3(r3() + 1);
delete caserun single casemove upmove downdrag and drop case


ready



r3.value++;
delete caserun single casemove upmove downdrag and drop case


ready



r4.value++;
delete caserun single casemove updrag and drop case


ready



r5.value++;
Test Case - click to add another test case
Teardown JS - click to add teardown JavaScript
Output (DOM) - click to monitor output (DOM) while test is running
RUN