当前位置: 首页 > news >正文

vue入门实战(二)父子组件显示,参数传递

经过上次的写法,我们已经写出每个list项,现在要在每个父组件下面加入自己的子项
一、新建子组件:
smallItem.vue:

<script>
export default{props:['text','id','status']	//父组件传来的参数
}
</script>
<template>(...html代码...)<input class="item_child_input form-control" :value=text>//这里的text就是props传进来的text
</template>

二、在父组件里引入子组件:
item.vue:

<script>import smallItem from './smallItem.vue'	//引入子组件export default{components:{smallItem		//声明组件}}
</script>
<template><div class="children_div" v-if="IsOpen">	//循环调用<smallItem v-for="child in children" :key="child.id" :status=child.status :text=child.text :id=child.id></smallItem></div>
</template>

注意:
1.循环时在v-for后面要加:key,不然会报错
2.:id写在最后
3.样式调整:
由于vue采用flex布局,有时会出现元素错乱的情况,这里我在index.html里加入了一句样式

<style>#app{grid-template-columns: 1fr;}
</style>

呈现效果:
在这里插入图片描述
大家可以看一下dom的渲染:
在这里插入图片描述
三、加入事件
在子组件里,我们加入了一个点击事件:
smallItem.vue:

methods:{Check(event){this.checkStatus = this.checkStatus == 0 ? 1 : 0;}},

(这里本来是命名为status,但vs提示说status被弃用,我猜应该是status是vue关键字,于是换了一个名字checkStatus)
开始测试,触发Check事件发现,控制台报错说this里面的变量是不允许被set的:
TypeError: ‘set’ on proxy: trap returned falsish for property ‘checkStatus’
这里的checkStatus当然就是props里面的变量,是不允许被改变的;
于是在本组件里定义一个自己的变量:

data(){return{checkStatus:this.checkStatus}}

这时的this.checkStatus就变成了我们重新定义的这个变量,就可以赋值了
实现效果:
点击子组件的对号小图标,记录为已完成
这里发现了一个问题,this.checkStatus在下次的调用被改回来了,我想可能是data里的return没有return我赋的值,这里暂时还不知道怎么解决,明天再看

http://www.lryc.cn/news/501503.html

相关文章:

  • 【Linux】Ubuntu:安装系统后配置
  • springboot-查看版本和版本所需JDK
  • fuxa搭建与使用(web组态)
  • 中间件--MongoDB部署及初始化js脚本(docker部署,docker-entrypoint-initdb.d,数据迁移,自动化部署)
  • C语言期末考试——常见考题(模拟考)
  • 流量过滤与路径转发控制
  • Ungoogled Chromium127编译指南 Windows篇 - 获取源码(七)
  • k8s 之 StatefulSet
  • iPhone 17 Air基本确认,3个大动作
  • 鸿蒙实现应用通知
  • ElasticSearch常见的索引_集群的备份与恢复方案
  • vue图片之放大、缩小、1:1、刷新、左切换、全屏、右切换、左旋咋、右旋转、x轴翻转、y轴翻转
  • Docker多架构镜像构建踩坑记
  • “pinn是无网格的”???
  • 换一个ip地址是什么意思?换一个网络ip地址会变吗
  • JavaWeb学习--cookie和session,实现登录的记住我和验证码功能
  • 深度学习:基于MindSpore的极简风大模型微调
  • 【LeetCode力扣热题100】【LeetCode 1】两数之和
  • 定制链接类名,两类跳转传参,vue路由重定向,404,模式设置
  • 【ArcGIS微课1000例】0135:自动生成标识码(长度不变,前面自动加0)
  • ISO45001职业健康安全管理体系认证流程
  • VueRouter路由
  • 性能测试攻略(一):需求分析
  • 【24年新算法时间序列预测】黑翅鸢BKA优化Transformer时间序列预测(评估指标全,出图多)
  • YOLOv8改进,YOLOv8引入CARAFE轻量级通用上采样算子,助力模型涨点
  • ZooKeeper节点扩容
  • 深度学习的unfold操作
  • C# 抽奖程序winform示例
  • 嵌入式蓝桥杯学习9 usart串口
  • 车载ADB:让汽车更智能的桥梁