You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
68 lines
1.9 KiB
68 lines
1.9 KiB
<html> |
|
<head> |
|
<meta charset="utf-8"> |
|
<title></title> |
|
<!-- <link rel="stylesheet" type="text/css" href="../dist/2.0/fineui.min.css"/> |
|
<script src="../dist/2.0/fineui.js"></script> --> |
|
<link rel="stylesheet" type="text/css" href="http://fanruan.design/fineui/2.0/fineui.min.css" /> |
|
<script src="http://fanruan.design/fineui/2.0/fineui.min.js"></script> |
|
</head> |
|
<body> |
|
<div id="wrapper"></div> |
|
<script> |
|
var Model = BI.inherit(Fix.Model, { |
|
state: function () { |
|
return { |
|
cls: "my-cls", |
|
background: "red", |
|
count: 0 |
|
}; |
|
} |
|
}); |
|
|
|
BI.model("demo.model", Model); |
|
|
|
var Widget = BI.inherit(BI.Widget, { |
|
_store: function () { |
|
return BI.Models.getModel("demo.model"); |
|
}, |
|
setup: function () { |
|
var store = BI.useStore(); |
|
return function () { |
|
return { |
|
type: "bi.vertical", |
|
items: [{ |
|
type: "bi.button", |
|
cls: function () { |
|
return store.model.cls; |
|
}, |
|
css: function () { |
|
return { |
|
background: store.model.background |
|
} |
|
}, |
|
text: "按钮", |
|
handler: function () { |
|
store.model.cls = "my-cls" + store.model.count++; |
|
store.model.background = "blue"; |
|
} |
|
}] |
|
}; |
|
}; |
|
} |
|
}); |
|
BI.shortcut("demo.hooks", Widget); |
|
BI.createWidget({ |
|
type: "bi.absolute", |
|
items: [{ |
|
el: { |
|
type: "demo.hooks" |
|
}, |
|
top: 100, |
|
left: 100 |
|
}], |
|
element: "#wrapper" |
|
}); |
|
</script> |
|
</body> |
|
</html>
|
|
|