首页 > 语言 > JavaScript > 正文

使用mint-ui开发项目的一些心得(分享)

2024-05-06 15:27:05
字体:
来源:转载
供稿:网友

Mint-ui:

1、Cell

开发过程中,有时需要修改mt-cell自带的icon和value的标签样式,这时我们可以在<mt-cell></mt-cell>内新添如下标签进行改写:

<si-cell class="user-cell item-cell" title="当前产品" to="/selectproduct" is-link>  <i class="siiconfont siicon-product"></i>  <span>{{productSelected}}</span></si-cell>

mt-cell无法直接绑定v-click事件,修改做法可以在<mt-cell></mt-cell>外面包一层<div></div>,在div上绑定click事件,代码可参照第2点search中的代码;

2、Search

通常情况下我们的参数不会直接是一个数组,可能需要对数据进行一些自定义处理,我的写法如下:

<si-search v-model="value" :result="filterResult">  <div v-for="item in filterResult" :key="item" @click="switchCustomer(item)">  <si-cell :title="item"></si-cell>  </div></si-search>

filterResult是计算属性,以此过滤好后台传来的数据后,再将其绑定在cell外的div层,还可以如第1点所说的绑定click事件,此处filterResult进行了中英文过滤,可以通过数据的中文名和英文名两个属性进行搜索。

filterResult() {  var that = this;  that.defaultResult = [];  var re = /^[a-zA-Z]+$/;  var data = that.result.data;  var val = that.value;  if (re.test(val)) {  for (var i = 0;i < data.length;i++) {   console.log(data[i].englishname);   if (new RegExp(val, 'i').test(data[i].englishname)) {   that.defaultResult.push(data[i].title);   }  }  return that.defaultResult;  }  else {  for (var i = 0;i < data.length;i++) {   that.defaultResult.push(data[i].title);  }  return that.defaultResult.filter(value => new RegExp(val, 'i').test(value));  } }

3、Tabbar

通常情况下,底部的tabbar栏是需要在多页面复用的,所以可以独立成一个组件,然后通过外部容器作为父组件进行使用,切换tab的同时,tabbar需要向父组件传递选中的一个自定义的tabchange事件

selectTab: function(id) { this.$emit('tabchange', id);}

父组件接收自定义事件tabchange,触发setSelected函数进行数据更新,通过数据驱动视图更新:

<si-tabbar :Selected="selected" @tabchange="setSelected"></si-tabbar>

修改selected的值来切换tab

setSelected: function(data) { this.selected = data; this.tabToggle(data);}

template内有关tab-container里的代码如下:

<div class="page-wrap"> <si-tab-container class="page-tabbar-container" v-model="selected"> <si-tab-container-item id="konwledge">  <si-news></si-news> </si-tab-container-item> <si-tab-container-item id="dashboard">  <si-overview></si-overview> </si-tab-container-item> <si-tab-container-item id="report">  <si-report></si-report> </si-tab-container-item> <si-tab-container-item id="user">  <si-user></si-user> </si-tab-container-item> </si-tab-container></div>            
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

图片精选