vue组件实现文字居中对齐的方法


Posted in Javascript onAugust 23, 2017

继续学习Vue,这次是一个组件的制作过程

先让我们来看一下组件的预期效果

vue组件实现文字居中对齐的方法

上图为公司自营的一个微信商城的某一部分截图,可以看到红框内部分的文字多行与单行是居中对齐的,我们现在要做的就是使用Vue把里边的文字模块制作成一个可以复用的组件。

首先我们先把css部分拿下来 

css:

.word-v-middle{
margin-bottom: 0;
font-size: 12px;
min-height: 31px;
display: flex;
align-items: center;
justify-content: center;
height: 31px;
margin-top: 5px;
color: #87878a;
white-space: normal;
}
.word-v-middle span{
text-align: left;
font-size: 10px;
text-overflow: -o-ellipsis-lastline;
overflow: hidden;
text-overflow: ellipsis;
display: -webkit-box;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
}

上边就是组件的核心css,也就是使文字上下居中的css,接下来我们先把它封装成一个Vue组件

html部分

<p class="word-v-middle"><span>文字内容</span></p>

我们先把这部分注册成一个组件,这里使用的是组件的局部注册方法

var wordMiddle = {
template:'<p class="word-v-middle"><span>文字内容</span></p>',
};

之后实例化

html:

<div id="exp">
<word-v-middle></word-v-middle>
</div>

js:

new Vue({
el:"#exp",

components:{


'word-v-middle':wordMiddle

}
});

这样第一步就算完成了效果图如下

vue组件实现文字居中对齐的方法

第二步我们来给组件绑定动态的数据,我们先在组件注册的时候添加一个props方法,让组件可以接受数据,之后使用data方法来为组件添加数据

var wordMiddle = {
template:'<p class="word-v-middle"><span>{{msg}}</span></p>',

props:['data'],

data:function(){


return {



msg:this.data


};

}
};

这样我们的组件就可以接收数据并把数据绑定到内容中,实例化时的代码也要对应的改变一下

html部分

<div id="exp">
<word-v-middle :data='aaa' ></word-v-middle>
</div>

js部分

new Vue({
el:"#exp",

data:{


aaa:'hello',

},

components:{


'word-v-middle':wordMiddle

}
})

到这里单个动态数据的组件以及完成了,但项目中用到这种对齐方式的一般都是多列的块结构,所以我们再写一个多列的例子,并使用循环绑定多个数据

css部分

#example2{
width: 100%;

overflow: hidden;
}
#example2 div{

float: left;

width: 25%;
}

html部分

<div id="example2">
<div v-for='aaa in sites'>


<word-v-middle :data='aaa' ></word-v-middle>

</div>
</div>

js部分

new Vue({
el:"#example2",

data:{


sites:[




"洗发水洗发水洗发水",




"洗发水洗发水",




"洗发水洗发水洗发水洗发水洗发水",





"洗发水洗发水", 




 ]



},

components:{


'word-v-middle':wordMiddle

}
})

vue组件实现文字居中对齐的方法

效果如上图,上述代码中,css部分是为了让代码为并列的四列,html中使用v-for方法循环数据,在组建内通过:data='aaa'接收循环输出的数据,而数据的来源是父元素实例化中的data内的名为sites的数组,在实际项目中,把sites内的数据换成后台输出的数组就可以实现后台数据的绑定。

代码还有很多不足的地方,比如想要更改上下对齐的行数还要通过修改css修改,这篇文章仅作为学习Vue的小结,供自己以后复习学习使用,有什么问题希望大家指正。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
详解AngularJS中的filter过滤器用法
Jan 04 Javascript
JavaScript中的Number数字类型学习笔记
May 26 Javascript
Bootstrap作品展示站点实战项目2
Oct 14 Javascript
Bootstrap实现带暂停功能的轮播组件(推荐)
Nov 25 Javascript
纯js实现页面返回顶部的动画(超简单)
Aug 10 Javascript
JS中promise化微信小程序api
Apr 12 Javascript
JS+HTML5实现获取手机验证码倒计时按钮
Aug 08 Javascript
Vue请求JSON Server服务器数据的实现方法
Nov 02 Javascript
js实现踩五彩块游戏
Feb 08 Javascript
koa-passport实现本地验证的方法示例
Feb 20 Javascript
vue-cli单页面预渲染seo-prerender-spa-plugin操作
Aug 10 Javascript
JavaScript实现原型封装轮播图
Dec 27 Javascript
React+react-dropzone+node.js实现图片上传的示例代码
Aug 23 #Javascript
深入理解React中何时使用箭头函数
Aug 23 #Javascript
自定义类似于jQuery UI Selectable 的Vue指令v-selectable
Aug 23 #jQuery
JS数组交集、并集、差集的示例代码
Aug 23 #Javascript
关于Vue实现组件信息的缓存问题
Aug 23 #Javascript
详解webpack进阶之loader篇
Aug 23 #Javascript
Vue中定义全局变量与常量的各种方式详解
Aug 23 #Javascript
You might like
php数组函数序列之asort() - 对数组的元素值进行升序排序,保持索引关系
2011/11/02 PHP
php操作redis数据库常见方法实例总结
2020/02/20 PHP
JavaScript 字符串连接性能优化
2008/12/20 Javascript
ASP SQL防注入的方法
2008/12/25 Javascript
深入理解JavaScript系列(10) JavaScript核心(晋级高手必读篇)
2012/01/15 Javascript
JS获取鼠标相对位置的方法
2016/09/20 Javascript
微信小程序 wxapp地图 map详解
2016/10/31 Javascript
JavaScript之排序函数_动力节点Java学院整理
2017/06/30 Javascript
Angular2使用vscode断点调试ts文件的方法
2017/12/13 Javascript
浅析前端路由简介以及vue-router实现原理
2018/06/01 Javascript
vue中使用gojs/jointjs的示例代码
2018/08/24 Javascript
vue-cli 3.0 自定义vue.config.js文件,多页构建的方法
2018/09/19 Javascript
vue 接口请求地址前缀本地开发和线上开发设置方式
2020/08/13 Javascript
vue-cli3自动消除console.log()的调试信息方式
2020/10/21 Javascript
python和shell变量互相传递的几种方法
2013/11/20 Python
Python3.4编程实现简单抓取爬虫功能示例
2017/09/14 Python
Python3实现发送QQ邮件功能(附件)
2020/12/23 Python
python基础学习之如何对元组各个元素进行命名详解
2018/07/12 Python
django从请求到响应的过程深入讲解
2018/08/01 Python
安装python及pycharm的教程图解
2019/10/10 Python
Pyecharts 动态地图 geo()和map()的安装与用法详解
2020/03/25 Python
从python读取sql的实例方法
2020/07/21 Python
CSS3 animation ? steps 函数详解
2019/08/30 HTML / CSS
五个2015 年最佳HTML5 框架
2015/11/11 HTML / CSS
html5使用canvas压缩图片的示例代码
2018/09/11 HTML / CSS
毕业生教师求职信
2013/10/20 职场文书
最新茶叶店创业计划书
2014/01/14 职场文书
电气自动化专业职业规划范文
2014/02/16 职场文书
电子商务专业学生职业生涯规划
2014/03/07 职场文书
党员活动日总结
2014/05/05 职场文书
领导班子专题民主生活会情况想汇报
2014/09/30 职场文书
门面房租房协议书
2014/12/01 职场文书
学校教师师德师风承诺书
2015/04/28 职场文书
不同意离婚代理词
2015/05/23 职场文书
2019年手机市场的调研报告2篇
2019/10/10 职场文书
利用python做表格数据处理
2021/04/13 Python