59 lines
1.4 KiB
Vue
59 lines
1.4 KiB
Vue
<template>
|
|
<view class="msg--text">
|
|
<text class="name" v-if="!guest && name">{{ name }}</text>
|
|
<view>
|
|
<text class="im--text" :class="guest ? 'right': 'left'">{{ msg.content }}</text>
|
|
</view>
|
|
</view>
|
|
</template>
|
|
|
|
<script>
|
|
export default {
|
|
name: 'showText',
|
|
props: {
|
|
msg: {
|
|
type: Object,
|
|
default: () => {
|
|
return {}
|
|
}
|
|
},
|
|
name: {
|
|
type: String,
|
|
default: ''
|
|
},
|
|
guest: {
|
|
type: Boolean,
|
|
default: true
|
|
}
|
|
}
|
|
}
|
|
</script>
|
|
|
|
<style scoped lang="scss">
|
|
.msg--text {
|
|
.name {
|
|
font-size: 26rpx;
|
|
color: $text-gray-m;
|
|
display: inline-block;
|
|
}
|
|
.im--text {
|
|
max-width: 508rpx;
|
|
padding: 20rpx;
|
|
line-height: 46rpx;
|
|
font-size: 32rpx;
|
|
color: $text-color;
|
|
display: inline-block;
|
|
word-break: break-all;
|
|
&.left {
|
|
border-radius: 0 20rpx 20rpx 20rpx;
|
|
background: white;
|
|
}
|
|
&.right {
|
|
border-radius: 20rpx 0 20rpx 20rpx;
|
|
background: $main-color;
|
|
color: white;
|
|
}
|
|
}
|
|
}
|
|
</style>
|