diff --git a/changelog.md b/changelog.md index e9ae90d8a..0defebe19 100644 --- a/changelog.md +++ b/changelog.md @@ -1,5 +1,6 @@ # 更新日志 2.0(2021-12) +- 新增Context组件 - toast支持closable属性,可控制是否显示关闭按钮 - 新增气泡弹框控件 - BI.point支持widget添加埋点 diff --git a/src/base/context.js b/src/base/context.js new file mode 100644 index 000000000..ecaf5febf --- /dev/null +++ b/src/base/context.js @@ -0,0 +1,45 @@ +/** + * 表示当前对象 + * + * Created by GUY on 2015/9/7. + * @class BI.EL + * @extends BI.Widget + */ +BI.Context = BI.inherit(BI.Widget, { + props: { + context: "", + watch: {}, + el: {}, + items: [] + }, + + render: function () { + var self = this, o = this.options; + this.context = BI.createWidget(o.items[0] || o.el, { + element: this + }); + this.context.on(BI.Controller.EVENT_CHANGE, function () { + self.fireEvent(BI.Controller.EVENT_CHANGE, arguments); + }); + }, + + created: function () { + var o = this.options; + if (o.context) { + BI.watch(o.context, o.watch); + } + }, + + setValue: function (v) { + this.context.setValue(v); + }, + + getValue: function () { + return this.context.getValue(); + }, + + populate: function () { + this.context.populate.apply(this, arguments); + } +}); +BI.shortcut("bi.context", BI.Context);