vue中多行文本标签_vue 模板语法

插值

文本

数据绑定最常见的形式就是使用“Mustache”语法 (双大括号) 的文本插值:

Message: { { msg }}

Mustache 标签将会被替代为对应数据对象上 msg 属性的值。无论何时,绑定的数据对象上 msg 属性发生了改变,插值处的内容都会更新。即便数据内容为一段 html 代码,仍然以文本内容展示

例:

vue template

文本插值 { {html_str}}

//只要引入vue框架,就会全局有个vue对象,这个对象是应用的根对象

var app = new Vue({

// 设置要操作的元素

el: '#div',

// 要替换的额数据

data: {

html_str:'

Vue

'

}

});

//打印vue实例

console.log(app);

浏览器渲染结果:文本插值

Vue

打开浏览器的 REPL 环境 输入 app.html_str = 'vue',结果如下

使用 JavaScript 表达式

迄今为止,在我们的模板中,我们一直都只绑定简单的属性键值。但实际上,对于所有的数据绑定,Vue.js 都提供了完全的 JavaScript 表达式支持,但是不能使用 JS 语句;

(表达式是运算,有结果;语句就是代码,可以没有结果)

例:

vue template

{ { un > 3 ? '大' : '小'}}

{ { fun() }}

var app = new Vue({

el:'#div',

data: {

un: 2,

fun: function () {

return 1 + 2;

}

}

})

运行结果

指令

指令 (Directives) 是带有 v- 前缀的特殊特性。指令特性的值预期是单个 JavaScript 表达式 (v-for 是例外情况)。指令的职责是,当表达式的值改变时,将其产生的连带影响,响应式地作用于 DOM;参考 手册 、 API

现在你看到我了

var app = new Vue({

el:'#div',

data:{

seen:true

}

})

这里,v-if 指令将根据表达式 seen 的值的真假来插入/移除

元素。

例:

正常显示

改为false

不显示

v-text / v-html 文本

错误代码

vue template

var app = new Vue({

el:'#div',

data:{

seen:'

Vue

',

str_html:'

Vue

',

class:'dd',

}

})

运行结果

去掉TML 属性用 { {}}的正确代码

vue template

var app = new Vue({

el:'#div',

data:{

seen:'

Vue

',

str_html:'

Vue

',

class:'dd',

}

})

注意:

v-text

v-text和差值表达式的区别

v-text 标签的指令更新整个标签中的内容(替换整个标签包括标签自身)

插值表达式,可以更新标签中局部的内容

v-html

<
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Vue实现多文本的展开收起功能可以通过计算多文本的高度来进判断,并使用Vue的条件渲染来实现展开收起效果。 首先,在data定义一个变量,例如`isExpanded`,用于控制文本的展开和收起状态,默认值设为`false`。 然后,在模板使用条件渲染来根据`isExpanded`的值展示不同的内容。 例如,使用`v-if`指令来判断是否展开,如果展开则显示完整文本,否则只显示指定数的文本。可以使用`v-text`指令来绑定文本内容。通过CSS的`line-clamp`属性来设置文本数,超出的部分将被省略。 ``` <template> <div> <div v-if="isExpanded"> <div v-text="text"></div> </div> <div v-else> <div class="clamp-line" v-text="text"></div> </div> <button @click="toggleExpand"> {{ isExpanded ? '收起' : '展开' }} </button> </div> </template> <script> export default { data() { return { isExpanded: false, text: "这是一段多文本" }; }, methods: { toggleExpand() { this.isExpanded = !this.isExpanded; } } }; </script> <style scoped> .clamp-line { display: -webkit-box; overflow: hidden; text-overflow: ellipsis; -webkit-line-clamp: 3; /* 设置为需要显示的数 */ -webkit-box-orient: vertical; } </style> ``` 以上代码,点击按钮时会触发`toggleExpand`方法,通过修改`isExpanded`的值来切换展开和收起状态。根据`isExpanded`的值,使用不同的模板来渲染文本内容。 按钮的文本内容也根据`isExpanded`的值来显示“展开”或“收起”。点击按钮时,会调用`toggleExpand`方法切换`isExpanded`的值。 通过以上代码和样式设置,就可以实现一个简单的多文本展开收起的功能。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值