guy 7 years ago
parent
commit
05a008e4cb
  1. 22
      demo/js/config/fix.js
  2. 52
      demo/js/fix-2.0/computed.js
  3. 45
      demo/js/fix-2.0/define.js
  4. 56
      demo/js/fix-2.0/demo.js
  5. 60
      demo/js/fix-2.0/store.js
  6. 51
      demo/js/fix-2.0/watcher.js
  7. 283
      dist/demo.js
  8. 2
      dist/fix/fix.js

22
demo/js/config/fix.js

@ -86,6 +86,26 @@ Demo.FIX_CONFIG = [{
}, { }, {
id: 71, id: 71,
pId: 7, pId: 7,
text: "fix框架", text: "定义响应式数据",
value: "demo.fix1"
}, {
id: 72,
pId: 7,
text: "计算属性",
value: "demo.fix2"
}, {
id: 73,
pId: 7,
text: "store",
value: "demo.fix3"
}, {
id: 74,
pId: 7,
text: "watcher表达式",
value: "demo.fix4"
}, {
id: 75,
pId: 7,
text: "一个混合的例子",
value: "demo.fix" value: "demo.fix"
}]; }];

52
demo/js/fix-2.0/computed.js

@ -0,0 +1,52 @@
;(function(){
var model = Fix.define({
name: "原始属性",
arr: [{
n: 'a'
}, {
n: 'b'
}]
});
var Computed = BI.inherit(Fix.VM, {
computed: {
b: function () {
return this.name + "-计算属性"
}
}
})
Demo.Fix = BI.inherit(BI.Widget, {
_store: function () {
return new Computed(model);
},
watch: {
b: function () {
this.button.setText(this.model.b)
}
},
render: function () {
var self = this;
return {
type: "bi.absolute",
items: [{
el: {
type: "bi.button",
ref: function () {
self.button = this;
},
handler: function () {
self.model.name = "这是改变后的属性"
},
text: this.model.b
}
}]
}
},
mounted: function () {
}
});
BI.shortcut("demo.fix2", Demo.Fix);
}());

45
demo/js/fix-2.0/define.js

@ -0,0 +1,45 @@
;(function () {
var model = Fix.define({
name: "原始属性",
arr: [{
n: 'a'
}, {
n: 'b'
}]
});
Demo.Fix = BI.inherit(BI.Widget, {
_store: function () {
return model;
},
watch: {
name: function () {
this.button.setText(this.model.name)
}
},
render: function () {
var self = this;
return {
type: "bi.absolute",
items: [{
el: {
type: "bi.button",
ref: function () {
self.button = this;
},
handler: function () {
self.model.name = "这是改变后的属性"
},
text: this.model.name
}
}]
}
},
mounted: function () {
}
});
BI.shortcut("demo.fix1", Demo.Fix);
}());

56
demo/js/fix-2.0/demo.js

@ -1,12 +1,13 @@
var model = Fix.define({ ;(function () {
var model = Fix.define({
name: 1, name: 1,
arr: [{ arr: [{
n: 'a' n: 'a'
}, { }, {
n: 'b' n: 0
}] }]
}); });
Demo.Computed = BI.inherit(Fix.VM, { var Computed = BI.inherit(Fix.VM, {
computed: { computed: {
b: function () { b: function () {
return this.name + 1 return this.name + 1
@ -15,41 +16,60 @@ Demo.Computed = BI.inherit(Fix.VM, {
return this.arr[1].n + this.b return this.arr[1].n + this.b
} }
} }
}) })
Demo.Store = BI.inherit(Fix.VM, { var Store = BI.inherit(Fix.VM, {
_init: function () { _init: function () {
this.comp = new Demo.Computed(model).model; this.comp = new Computed(model).model;
}, },
computed: { computed: {
b: function () { b: function () {
return this.comp.c + 1 return this.comp.c + 1
}, },
c: function () { c: function () {
return this.comp.name return this.comp.arr[1].n & 1;
} }
}, },
actions: { actions: {
run: function () { run: function () {
this.comp.name = 2; this.comp.name++;
this.comp.arr[1].n = "c" this.comp.arr[1].n++;
} }
} }
}); });
Demo.Fix = BI.inherit(BI.Widget, { Demo.Fix = BI.inherit(BI.Widget, {
_store: function () { _store: function () {
return new Demo.Store(); return new Store();
}, },
watch: { watch: {
"b&&c||b": function () { "b&&(c||b)": function () {
debugger; this.button.setText(this.model.b)
}
},
render: function () {
var self = this;
return {
type: "bi.absolute",
items: [{
el: {
type: "bi.button",
ref: function () {
self.button = this;
},
handler: function () {
self.store.run()
},
text: this.model.b
}
}]
} }
}, },
mounted: function () { mounted: function () {
this.store.run()
} }
}); });
BI.shortcut("demo.fix", Demo.Fix); BI.shortcut("demo.fix", Demo.Fix);
}());

60
demo/js/fix-2.0/store.js

@ -0,0 +1,60 @@
;(function(){
var model = Fix.define({
name: "原始属性",
arr: [{
n: 'a'
}, {
n: 'b'
}]
});
var Store = BI.inherit(Fix.VM, {
_init: function () {
},
computed: {
b: function () {
return model.name + '-计算属性'
}
},
actions: {
run: function () {
model.name = "这是改变后的属性";
}
}
});
Demo.Fix = BI.inherit(BI.Widget, {
_store: function () {
return new Store();
},
watch: {
b: function () {
this.button.setText(this.model.b)
}
},
render: function () {
var self = this;
return {
type: "bi.absolute",
items: [{
el: {
type: "bi.button",
ref: function () {
self.button = this;
},
handler: function () {
self.store.run()
},
text: this.model.b
}
}]
}
},
mounted: function () {
}
});
BI.shortcut("demo.fix3", Demo.Fix);
}());

51
demo/js/fix-2.0/watcher.js

@ -0,0 +1,51 @@
;(function () {
var model = Fix.define({
name: "原始属性",
arr: [{
n: 'a'
}, {
n: 0
}]
});
Demo.Fix = BI.inherit(BI.Widget, {
_store: function () {
return model;
},
watch: {
"name||arr.1.n": function () {
this.button.setText(this.model.name + "-" + this.model.arr[1].n)
}
},
render: function () {
var self = this;
var cnt = 0;
return {
type: "bi.absolute",
items: [{
el: {
type: "bi.button",
ref: function () {
self.button = this;
},
handler: function () {
if (cnt & 1) {
self.model.name += 1;
} else {
self.model.arr[1].n += 1;
}
cnt++;
},
text: this.model.name + "-" + this.model.arr[1].n
}
}]
}
},
mounted: function () {
}
});
BI.shortcut("demo.fix4", Demo.Fix);
}());

283
dist/demo.js vendored

@ -5381,7 +5381,27 @@ Demo.FIX_CONFIG = [{
}, { }, {
id: 71, id: 71,
pId: 7, pId: 7,
text: "fix框架", text: "定义响应式数据",
value: "demo.fix1"
}, {
id: 72,
pId: 7,
text: "计算属性",
value: "demo.fix2"
}, {
id: 73,
pId: 7,
text: "store",
value: "demo.fix3"
}, {
id: 74,
pId: 7,
text: "watcher表达式",
value: "demo.fix4"
}, {
id: 75,
pId: 7,
text: "一个混合的例子",
value: "demo.fix" value: "demo.fix"
}];Demo.WIDGET_CONFIG = [{ }];Demo.WIDGET_CONFIG = [{
id: 4, id: 4,
@ -10070,15 +10090,112 @@ Demo.Func = BI.inherit(BI.Widget, {
} }
}); });
BI.shortcut("demo.tmp", Demo.Func); BI.shortcut("demo.tmp", Demo.Func);
var model = Fix.define({ ;(function(){
name: 1, var model = Fix.define({
name: "原始属性",
arr: [{ arr: [{
n: 'a' n: 'a'
}, { }, {
n: 'b' n: 'b'
}] }]
}); });
Demo.Computed = BI.inherit(Fix.VM, { var Computed = BI.inherit(Fix.VM, {
computed: {
b: function () {
return this.name + "-计算属性"
}
}
})
Demo.Fix = BI.inherit(BI.Widget, {
_store: function () {
return new Computed(model);
},
watch: {
b: function () {
this.button.setText(this.model.b)
}
},
render: function () {
var self = this;
return {
type: "bi.absolute",
items: [{
el: {
type: "bi.button",
ref: function () {
self.button = this;
},
handler: function () {
self.model.name = "这是改变后的属性"
},
text: this.model.b
}
}]
}
},
mounted: function () {
}
});
BI.shortcut("demo.fix2", Demo.Fix);
}());;(function () {
var model = Fix.define({
name: "原始属性",
arr: [{
n: 'a'
}, {
n: 'b'
}]
});
Demo.Fix = BI.inherit(BI.Widget, {
_store: function () {
return model;
},
watch: {
name: function () {
this.button.setText(this.model.name)
}
},
render: function () {
var self = this;
return {
type: "bi.absolute",
items: [{
el: {
type: "bi.button",
ref: function () {
self.button = this;
},
handler: function () {
self.model.name = "这是改变后的属性"
},
text: this.model.name
}
}]
}
},
mounted: function () {
}
});
BI.shortcut("demo.fix1", Demo.Fix);
}());
;(function () {
var model = Fix.define({
name: 1,
arr: [{
n: 'a'
}, {
n: 0
}]
});
var Computed = BI.inherit(Fix.VM, {
computed: { computed: {
b: function () { b: function () {
return this.name + 1 return this.name + 1
@ -10087,44 +10204,172 @@ Demo.Computed = BI.inherit(Fix.VM, {
return this.arr[1].n + this.b return this.arr[1].n + this.b
} }
} }
}) })
Demo.Store = BI.inherit(Fix.VM, { var Store = BI.inherit(Fix.VM, {
_init: function () { _init: function () {
this.comp = new Demo.Computed(model).model; this.comp = new Computed(model).model;
}, },
computed: { computed: {
b: function () { b: function () {
return this.comp.c + 1 return this.comp.c + 1
}, },
c: function () { c: function () {
return this.comp.name return this.comp.arr[1].n & 1;
} }
}, },
actions: { actions: {
run: function () { run: function () {
this.comp.name = 2; this.comp.name++;
this.comp.arr[1].n = "c" this.comp.arr[1].n++;
} }
} }
}); });
Demo.Fix = BI.inherit(BI.Widget, { Demo.Fix = BI.inherit(BI.Widget, {
_store: function () { _store: function () {
return new Demo.Store(); return new Store();
}, },
watch: { watch: {
"b&&c||b": function () { "b&&(c||b)": function () {
debugger; this.button.setText(this.model.b)
}
},
render: function () {
var self = this;
return {
type: "bi.absolute",
items: [{
el: {
type: "bi.button",
ref: function () {
self.button = this;
},
handler: function () {
self.store.run()
},
text: this.model.b
}
}]
} }
}, },
mounted: function () { mounted: function () {
this.store.run()
} }
}); });
BI.shortcut("demo.fix", Demo.Fix);
}());;(function(){
var model = Fix.define({
name: "原始属性",
arr: [{
n: 'a'
}, {
n: 'b'
}]
});
var Store = BI.inherit(Fix.VM, {
_init: function () {
},
computed: {
b: function () {
return model.name + '-计算属性'
}
},
actions: {
run: function () {
model.name = "这是改变后的属性";
}
}
});
Demo.Fix = BI.inherit(BI.Widget, {
_store: function () {
return new Store();
},
watch: {
b: function () {
this.button.setText(this.model.b)
}
},
render: function () {
var self = this;
return {
type: "bi.absolute",
items: [{
el: {
type: "bi.button",
ref: function () {
self.button = this;
},
handler: function () {
self.store.run()
},
text: this.model.b
}
}]
}
},
mounted: function () {
}
});
BI.shortcut("demo.fix3", Demo.Fix);
}());;(function () {
var model = Fix.define({
name: "原始属性",
arr: [{
n: 'a'
}, {
n: 0
}]
});
Demo.Fix = BI.inherit(BI.Widget, {
_store: function () {
return model;
},
watch: {
"name||arr.1.n": function () {
this.button.setText(this.model.name + "-" + this.model.arr[1].n)
}
},
render: function () {
var self = this;
var cnt = 0;
return {
type: "bi.absolute",
items: [{
el: {
type: "bi.button",
ref: function () {
self.button = this;
},
handler: function () {
if (cnt & 1) {
self.model.name += 1;
} else {
self.model.arr[1].n += 1;
}
cnt++;
},
text: this.model.name + "-" + this.model.arr[1].n
}
}]
}
},
mounted: function () {
}
});
BI.shortcut("demo.fix", Demo.Fix);Demo.Main = BI.inherit(BI.Widget, { BI.shortcut("demo.fix4", Demo.Fix);
}());Demo.Main = BI.inherit(BI.Widget, {
props: { props: {
baseCls: "demo-main bi-background" baseCls: "demo-main bi-background"
}, },

2
dist/fix/fix.js vendored

@ -974,7 +974,7 @@ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Cons
cb.call(vm); cb.call(vm);
fns = exps.slice(); fns = exps.slice();
nextTick(function () { nextTick(function () {
complete = true; complete = false;
}); });
} }
}, options); }, options);

Loading…
Cancel
Save