博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Vue 2.0 入门系列(6)组件实例之消息框
阅读量:6496 次
发布时间:2019-06-24

本文共 1548 字,大约阅读时间需要 5 分钟。

本节要实现一个消息框组件。效果:

clipboard.png

Bulma 消息框

我们使用的是 Bulma 的 。Bulma 的消息框的基本界面如下:

标题

消息内容

纯静态页面,删除功能需要我们去实现。

使用 slot

首先,我们考虑用之前学到过的 slot 来实现:

Vue.component('message',{    template: `        
默认标题
`, data() { return { isVisible:true } }, methods:{ hideMessage() { this.isVisible = false } }});var vm = new Vue({ el:"#root"});

因为我们使用了多个 slot,为了能否区分,可以将标题的 slot 取名。这样,在父实例中就可以这样使用:

你好,Vue

使用 template 的好处是页面渲染时会保持子组件的样子。当然,也可以这样:

欢迎

你好,Vue

那么就会被渲染成:

欢迎

使用 pros

我们在来看看另外一种实现方式:

应当如何实现呢?模板似乎可以这样写:

template: `    
{
{ title }}
{
{ body }}
`,

这种情景属于「组件的内部通信」,即 message 实例(parent)的数据要传递给 message 组件(child),这需要在组件的 props 属性中进行定义 :

Vue.component('message',{    props: ['title','body'],    template: `        
{
{ title }}
{
{ body }}
`, data() { return { isVisible:true } }, methods:{ hideMessage() { this.isVisible = false } }});var vm = new Vue({ el:"#root"});

在组件的 props 属性中定义好之后,实例就可以直接通过属性的方式传递数据给组件了。


附录:

转载地址:http://iluyo.baihongyu.com/

你可能感兴趣的文章
【转】那些年我们一起清除过的浮动
查看>>
python__高级 : 动态添加 对象属性, 类属性, 对象实例方法, 类静态方法, 类方法...
查看>>
【每天一道算法题】时间复杂度为O(n)的排序
查看>>
NLog的介绍使用
查看>>
Haproxy+Rabbitmq中的问题
查看>>
字符串变量小议
查看>>
232. Implement Queue using Stacks
查看>>
Poj(1469),二分图最大匹配
查看>>
和菜鸟一起学linux之V4L2摄像头应用流程【转】
查看>>
spin_lock、spin_lock_irq、spin_lock_irqsave区别【转】
查看>>
删除 mac 垃圾桶内清除不掉的文件
查看>>
【响应式编程的思维艺术】 (5)Angular中Rxjs的应用示例
查看>>
/bin/bash^M: bad interpreter: No such file or dire
查看>>
python xml rpc
查看>>
Java设置以及获取JavaBean私有属性进阶
查看>>
db2表结构导出导入,数据库备份
查看>>
策略模式
查看>>
第二 周作业总结
查看>>
OrderOnline——项目概述
查看>>
POJ-2739(Water)
查看>>