|
@@ -0,0 +1,253 @@
|
|
|
+Component({
|
|
|
+ properties: {
|
|
|
+ dropDownMenuTitle: {
|
|
|
+ type: Array,
|
|
|
+ value: [],
|
|
|
+ },
|
|
|
+ dropDownMenuDistrictData: {
|
|
|
+ type: Array,
|
|
|
+ value: [],
|
|
|
+ observer: function(newVal, oldVal) {
|
|
|
+ let model = newVal[0] ? newVal[0] : null
|
|
|
+ this.selectDefaltDistrictLeft(model)
|
|
|
+ }
|
|
|
+ },
|
|
|
+
|
|
|
+ dropDownMenuSourceData: {
|
|
|
+ type: Array,
|
|
|
+ value: []
|
|
|
+ },
|
|
|
+ dropDownMenuStyleData: {
|
|
|
+ type: Array,
|
|
|
+ value: []
|
|
|
+ },
|
|
|
+ dropDownMenuFilterData: {
|
|
|
+ type: Array,
|
|
|
+ value: []
|
|
|
+ },
|
|
|
+ },
|
|
|
+ data: {
|
|
|
+ // private properity
|
|
|
+ district_open: false, // 区域
|
|
|
+ source_open: false, // 来源
|
|
|
+ style_open: false, // 出租 出售
|
|
|
+ filteropen: false, // 筛选
|
|
|
+ shownavindex: '',
|
|
|
+ dropDownMenuDistrictDataRight: {},
|
|
|
+ district_left_select: '',
|
|
|
+ district_right_select: '',
|
|
|
+ district_right_select_name: '',
|
|
|
+ selected_style_id: 0,
|
|
|
+ selected_style_name: '',
|
|
|
+ selected_source_id: 0,
|
|
|
+ selected_source_name: '',
|
|
|
+ selected_filter_id: 0,
|
|
|
+ selected_filter_name: ''
|
|
|
+ },
|
|
|
+ methods: {
|
|
|
+
|
|
|
+ tapDistrictNav: function(e) {
|
|
|
+ if (this.data.district_open) {
|
|
|
+ this.setData({
|
|
|
+ district_open: false,
|
|
|
+ source_open: false,
|
|
|
+ style_open: false,
|
|
|
+ filter_open: false,
|
|
|
+ shownavindex: 0
|
|
|
+ })
|
|
|
+ } else {
|
|
|
+ this.setData({
|
|
|
+ district_open: true,
|
|
|
+ style_open: false,
|
|
|
+ source_open: false,
|
|
|
+ filter_open: false,
|
|
|
+ shownavindex: e.currentTarget.dataset.nav
|
|
|
+ })
|
|
|
+ }
|
|
|
+
|
|
|
+ },
|
|
|
+ tapSourceNav: function(e) {
|
|
|
+ if (this.data.source_open) {
|
|
|
+ this.setData({
|
|
|
+ source_open: false,
|
|
|
+ style_open: false,
|
|
|
+ district_open: false,
|
|
|
+ filter_open: false,
|
|
|
+ shownavindex: 0
|
|
|
+ })
|
|
|
+ } else {
|
|
|
+ this.setData({
|
|
|
+ source_open: true,
|
|
|
+ style_open: false,
|
|
|
+ district_open: false,
|
|
|
+ filter_open: false,
|
|
|
+ shownavindex: e.currentTarget.dataset.nav
|
|
|
+ })
|
|
|
+ }
|
|
|
+ },
|
|
|
+ tapStyleNav: function(e) {
|
|
|
+ if (this.data.style_open) {
|
|
|
+ this.setData({
|
|
|
+ source_open: false,
|
|
|
+ style_open: false,
|
|
|
+ district_open: false,
|
|
|
+ filter_open: false,
|
|
|
+ shownavindex: 0
|
|
|
+ })
|
|
|
+ } else {
|
|
|
+ this.setData({
|
|
|
+ source_open: false,
|
|
|
+ style_open: true,
|
|
|
+ filter_open: false,
|
|
|
+ district_open: false,
|
|
|
+ shownavindex: e.currentTarget.dataset.nav
|
|
|
+ })
|
|
|
+ }
|
|
|
+ console.log(e.target)
|
|
|
+ },
|
|
|
+ tapFilterNav: function(e) {
|
|
|
+ if (this.data.filter_open) {
|
|
|
+ this.setData({
|
|
|
+ source_open: false,
|
|
|
+ style_open: false,
|
|
|
+ district_open: false,
|
|
|
+ filter_open: false,
|
|
|
+ shownavindex: 0
|
|
|
+ })
|
|
|
+ } else {
|
|
|
+ this.setData({
|
|
|
+ source_open: false,
|
|
|
+ style_open: false,
|
|
|
+ district_open: false,
|
|
|
+ filter_open: true,
|
|
|
+ shownavindex: e.currentTarget.dataset.nav
|
|
|
+ })
|
|
|
+ }
|
|
|
+ },
|
|
|
+
|
|
|
+
|
|
|
+ selectDefaltDistrictLeft(model) {
|
|
|
+ if (!model) {
|
|
|
+ return
|
|
|
+ }
|
|
|
+ var model = model.childModel;
|
|
|
+ var selectedId = model.id
|
|
|
+ var selectedTitle = model.title;
|
|
|
+ this.setData({
|
|
|
+ dropDownMenuDistrictDataRight: model ? model : '',
|
|
|
+ district_left_select: selectedId,
|
|
|
+ district_right_select: '',
|
|
|
+ })
|
|
|
+ },
|
|
|
+
|
|
|
+ selectDistrictLeft: function(e) {
|
|
|
+ var model = e.target.dataset.model.childModel;
|
|
|
+ var selectedId = e.target.dataset.model.id
|
|
|
+ var selectedTitle = e.target.dataset.model.title;
|
|
|
+ this.setData({
|
|
|
+ dropDownMenuDistrictDataRight: model ? model : '',
|
|
|
+ district_left_select: selectedId,
|
|
|
+ district_right_select: '',
|
|
|
+ })
|
|
|
+ },
|
|
|
+
|
|
|
+ selectDistrictRight: function(e) {
|
|
|
+ var selectedId = e.target.dataset.model.id
|
|
|
+ var selectedTitle = e.target.dataset.model.title;
|
|
|
+ this.closeHyFilter();
|
|
|
+ this.setData({
|
|
|
+ district_right_select: selectedId,
|
|
|
+ district_right_select_name: selectedTitle
|
|
|
+ })
|
|
|
+ this.triggerEvent("selectedItem", {
|
|
|
+ index: this.data.shownavindex,
|
|
|
+ selectedId: selectedId,
|
|
|
+ selectedTitle: selectedTitle
|
|
|
+ })
|
|
|
+ },
|
|
|
+
|
|
|
+ selectSourceItem: function(e) {
|
|
|
+ var selectedId = e.target.dataset.model.id
|
|
|
+ var selectedTitle = e.target.dataset.model.title;
|
|
|
+ this.closeHyFilter();
|
|
|
+ this.setData({
|
|
|
+ selected_source_id: selectedId,
|
|
|
+ selected_source_name: selectedTitle
|
|
|
+ })
|
|
|
+ this.triggerEvent("selectedItem", {
|
|
|
+ index: this.data.shownavindex,
|
|
|
+ selectedId: selectedId,
|
|
|
+ selectedTitle: selectedTitle
|
|
|
+ })
|
|
|
+ },
|
|
|
+
|
|
|
+ selectFilterItem: function(e) {
|
|
|
+ var selectedId = e.target.dataset.model.id
|
|
|
+ var selectedTitle = e.target.dataset.model.title;
|
|
|
+ this.closeHyFilter();
|
|
|
+ this.setData({
|
|
|
+ selected_filter_id: selectedId,
|
|
|
+ selected_filter_name: selectedTitle
|
|
|
+ })
|
|
|
+ this.triggerEvent("selectedItem", {
|
|
|
+ index: this.data.shownavindex,
|
|
|
+ selectedId: selectedId,
|
|
|
+ selectedTitle: selectedTitle
|
|
|
+ })
|
|
|
+ },
|
|
|
+
|
|
|
+ selectStyleItem: function(e) {
|
|
|
+ var selectedId = e.target.dataset.model.id
|
|
|
+ var selectedTitle = e.target.dataset.model.title;
|
|
|
+ this.closeHyFilter();
|
|
|
+ this.setData({
|
|
|
+ selected_style_id: selectedId,
|
|
|
+ selected_style_name: selectedTitle
|
|
|
+ })
|
|
|
+ this.triggerEvent("selectedItem", {
|
|
|
+ index: this.data.shownavindex,
|
|
|
+ selectedId: selectedId,
|
|
|
+ selectedTitle: selectedTitle
|
|
|
+ })
|
|
|
+ },
|
|
|
+
|
|
|
+ /**关闭筛选 */
|
|
|
+ closeHyFilter: function() {
|
|
|
+ if (this.data.district_open) {
|
|
|
+ this.setData({
|
|
|
+ district_open: false,
|
|
|
+ source_open: false,
|
|
|
+ style_open: false,
|
|
|
+ filter_open: false,
|
|
|
+ })
|
|
|
+ } else if (this.data.source_open) {
|
|
|
+ this.setData({
|
|
|
+ source_open: false,
|
|
|
+ style_open: false,
|
|
|
+ district_open: false,
|
|
|
+ filter_open: false,
|
|
|
+ })
|
|
|
+ } else if (this.data.style_open) {
|
|
|
+ this.setData({
|
|
|
+ source_open: false,
|
|
|
+ style_open: false,
|
|
|
+ district_open: false,
|
|
|
+ filter_open: false,
|
|
|
+ })
|
|
|
+ } else if (this.data.filter_open) {
|
|
|
+ this.setData({
|
|
|
+ source_open: false,
|
|
|
+ style_open: false,
|
|
|
+ district_open: false,
|
|
|
+ filter_open: false,
|
|
|
+ })
|
|
|
+ }
|
|
|
+ },
|
|
|
+ },
|
|
|
+ //组件生命周期函数,在组件实例进入页面节点树时执行
|
|
|
+ attached: function() {
|
|
|
+
|
|
|
+
|
|
|
+ },
|
|
|
+
|
|
|
+})
|