陪诊小程序之uniapp(从入门到精通)

1.uniapp如何使用vue3编写页面

<template><view class="content"><navbar name="navbar组件"></navbar><image class="logo" src="/static/logo.png"></image><view class="text-area"><text class="title">{{title}}</text></view><view class="">11111</view><button @click="handleClick">点我</button><text>总共购买的水果数量{{totalNum}}</text><my-component></my-component><aComponent></aComponent><navbar></navbar><view v-for="item in list" :key="item.name"><view>1111</view><text>{{item.name}}</text><text>{{item.num}}</text></view></view>
</template><script setup>import  aComponent  from '../../../project/component/component.vue';import{ref,reactive,computed} from 'vue'import{onLoad} from '@dcloudio/uni-app'const title=ref('Hello')const list=reactive([{name:'apple',num:1},{name:'orange',num:2},{name:'banana',num:3}])const handleClick=()=>{list.forEach(item=>{item.num++})}onLoad(()=>{console.log('onLode生命周期')})const totalNum=computed(()=>{return list.reduce((total,cur)=>total+cur.num,0)})
</script><style>.content {display: flex;flex-direction: column;align-items: center;justify-content: center;}.logo {height: 200rpx;width: 200rpx;margin-top: 200rpx;margin-left: auto;margin-right: auto;margin-bottom: 50rpx;}.text-area {display: flex;justify-content: center;}.title {font-size: 36rpx;color: #8f8f94;}
</style>

引入组件的三种方式

全局引入

1.引入

 import componentVue from './component/component.vue'

 2.全局注册

export function createApp() {
const app = createSSRApp(App)
app.component('my-component',componentVue)
  return {
    app
  }
}

3.页面中引入

<my-component></my-component>

局部引入

<script setup>
    import  aComponent  from '../../../project/component/component.vue';
    
    import{ref,reactive,computed} from 'vue'
    import{onLoad} from '@dcloudio/uni-app'
    const title=ref('Hello')
    const list=reactive([
        {name:'apple',num:1},
        {name:'orange',num:2},
        {name:'banana',num:3}
    ])
    const handleClick=()=>{
        list.forEach(item=>{
            item.num++
        })
    }
    onLoad(()=>{
        console.log('onLode生命周期')
    })
    const totalNum=computed(()=>{
        return list.reduce((total,cur)=>total+cur.num,0)
    })
</script>

<aComponent></aComponent>

自动引入

新建文件夹然后新建组件

组件引入

	<navbar></navbar>

2.uniapp组件通信props和$emit和插槽语法

 props

组件

<template><view>navbar组件</view>
</template><script setup>
import { defineProps } from 'vue';
defineProps(['name','content'])</script><style></style>

组件引入数据

<navbar name="navbar组件" :content="data"></navbar>

父组件(页面)向子组件传值,如果没传就用默认值

<template><view>navbar组件<view>组件的name属性{{name}}</view><view>组件的content属性{{content}}</view></view>
</template><script setup>
import { defineProps } from 'vue';
// defineProps(['name','content'])
defineProps({
name:String,	content:{type:String,default:()=>{return '默认值';}}	
})</script><style></style>

$emit

navbar.vue

<template>
    <view>
        navbar组件
        <view>组件的name属性{{name}}</view>
        <view>组件的content属性{{content}}</view>

        <button @click="handleChange">修改content</button>
    </view>
</template>

<script setup>
import { defineProps,defineEmits } from 'vue';
// defineProps(['name','content'])
defineProps({
name:String,    
    content:{
        type:String,
        default:()=>{
            return '默认值';
        }
    }
    
})
const emit=defineEmits(['changeData'])
const handleChange=()=>{
    emit('changeData','修改后的数据')
}

</script>

<style>

</style>

    <navbar :name="navbar组件" :content="data" @changeData="changeData"></navbar>

插槽语法

<navbar :name="navbar组件" :content="data" @changeData="changeData">
            <view>我是插槽的内容</view>
        </navbar>

<template>
        <view>组件</view>
        <view>组件的name属性{{name}}</view>
        <view>组件的content属性{{content}}</view>
        <slot></slot>
        <button @click="handleChange">修改content</button>
</template>

<script setup>
import { defineProps,defineEmits } from 'vue';
// defineProps(['name','content'])
defineProps({
name:String,    
    content:{
        type:String,
        default:()=>{
            return '默认值';
        }
    }
    
})
const emit=defineEmits(['changeData'])
const handleChange=()=>{
    emit('changeData','修改后的数据')
}

</script>

<style>

</style>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/56976.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

K14837 时空穿越(through)

题目描述 杰克船长的“黑珍珠号”误入了一片海域&#xff0c;一翻风浪过后&#xff0c;他发现自己穿越到了一个未知且神奇的岛屿上&#xff0c;岛屿上空无一物&#xff0c;只有一块写着字的牌子&#xff0c;上面写着&#xff1a;欢迎来到这里&#xff0c;参加我们的时间旅行计…

【OD】【E卷】【真题】【100分】补种未成活胡杨(PythonJavajavaScriptC++C)

题目描述 近些年来&#xff0c;我国防沙治沙取得显著成果。某沙漠新种植N棵胡杨&#xff08;编号1-N&#xff09;&#xff0c;排成一排。 一个月后&#xff0c;有M棵胡杨未能成活。 现可补种胡杨K棵&#xff0c;请问如何补种&#xff08;只能补种&#xff0c;不能新种&#…

C++进阶:AVL树实现

目录 一.AVL的概念 二.AVL的实现 2.1AVL树的结构 2.2AVL树的插入 2.2.1AVL树插入一个值的大概过程 2.2.2平衡因子更新 2.2.3插入节点及更新平衡因子的实现 2.3旋转 2.3.1旋转的原则 2.3.2右单旋 2.3.3右单旋的代码实现 2.3.4左单旋 2.3.5左单旋的代码实现 2.3.6…

vue综合指南(二)

​&#x1f308;个人主页&#xff1a;前端青山 &#x1f525;系列专栏&#xff1a;Vue篇 &#x1f516;人终将被年少不可得之物困其一生 依旧青山,本期给大家带来Vuet篇专栏内容:vue综合指南(二) 目录 21、介绍虚拟DOM 22、vue生命周期的理解 23、vue父组件向子组件传递数据…

架构设计笔记-20-补充知识

知识产权 我国没有专门针对知识产权制定统一的法律(知识产权法)&#xff0c;而是在民法通则规定的原则下&#xff0c;根据知识产权的不同类型制定了不同的单项法律及法规&#xff0c;如著作权法、商标法、专利法、计算机软件保护条例等&#xff0c;这些法律、法规共同构成了我…

STM32_实验5_中断实验

通过外部中断来检测四个按键按下的状态&#xff1a; WK_UP 控制蜂鸣器响和停 KEY0 控制 LED_R 互斥点亮 KEY1 控制 LED_G 互斥点亮 KEY2 控制 LED_B 互斥点亮。 中断的基本概念&#xff1a; 中断请求&#xff08;IRQ&#xff09;&#xff1a; 当发生某个特定事件&#xff08;例…

【问题解决】——当出现0xc000007b和缺少mfc140.dll时,该怎么做才能让软件可以打开

目录 事情起因 问题处理 明确定义 填坑之路 最后我是怎么解决的&#xff08;不想看故事直接到这里&#xff09; 事情起因 最近想要重新安装西门子博途来做西门子的一些算法的时候&#xff0c;发现自己软件装的是V15.1的版本&#xff0c;而买的plc1200固件版本要求至少16以…

(AtCoder Beginner Contest 375)D - ABA

&#xff08;AtCoder Beginner Contest 375&#xff09;D - ABA 题目大意 给定一个只包含大写字母的字符串S&#xff0c;求解其长度为3的回文字序列个数 思路 首先暴力枚举区间计算答案 O ( ∣ S ∣ 2 ) O(|S|^2) O(∣S∣2) 一定是会超时的 我们考虑使用前缀和思想 我们对于…

两个yaml转成的 excel对比

语言本地化过程中 &#xff0c;yaml转成excel格式给翻译人员使用&#xff0c;翻译好之后再转换成yaml格式给游戏使用。但是在翻译人员编辑时是不可控的&#xff0c;有可能造成某种想不到的问题。因此&#xff0c;需要将翻译人员的excel转成yaml ,再将yaml转成excel和翻译人员的…

特征编码:假如是树模型,还需要特征编码吗?

如果使用树模型&#xff0c;不一定需要进行传统的特征编码&#xff0c;具体取决于特征的性质和数据的情况。 一、不需要编码的情况 对于纯数值型特征&#xff1a;树模型可以直接处理数值型特征&#xff0c;无需进行编码。例如&#xff0c;如果特征是年龄、收入等连续数值&…

智能工厂的设计软件 表征论的三向度空间(意向相关项)

本文要点 在 最高级别上的数学诠释学观点中表征论的三向度空间&#xff08; 三个意向相关relative项引用&#xff09; “表征模式张量 空间--一般量化词【词典词】&#xff1a; 产品生产线程thread中最后的 “封装”的生产任务--以主取式存在分类学 划分的 “Package”中唯…

文本数据可视化

文字是传递信息最常用的载体。在当前这个信息爆炸的时代,人们接收信息的速度已经小于信息产生的速度,尤其是文本信息。当大段大段的文字摆在面前,已经很少有耐心去认真把它读完,经常是先找文中的图片来看。这一方面说明人们对图形的接受程度比枯燥的文字要高很多,另一方面…

推荐IDE中实用AI编程插件,目前无限次使用

插件介绍 一款字节跳动推出的“基于豆包大模型的智能开发工具” 以vscode介绍【pycharm等都可以啊】&#xff0c;这个插件提供智能补全、智能预测、智能问答等能力&#xff0c;节省开发时间 直接在IDE中使用&#xff0c;就不用在网页中来回切换了 感觉还可以&#xff0c;响应速…

SelectFromModel:如何调整阈值来控制特征选择的数量?

在使用SelectFromModel结合如梯度提升决策树&#xff08;GBDT&#xff09;等模型进行特征选择时&#xff0c;可以通过以下几种方式调整阈值来控制选择的特征数量&#xff1a; 一、设置阈值参数&#xff08;以基于特征重要性为例&#xff09; 对于一些模型&#xff0c;如基于树…

【SQL实验】 设计主码、check约束 、外码(SSMS 菜单操作)

设计主码 PK——主码 右键点击所需的表&#xff0c;选择“设计”。 选择需要作为主键的列&#xff0c;右键点击并选择“设为主键”。 保存更改&#xff0c;确保主键设置生效。 如果出现下图&#xff1a; 解决方式&#xff1a; 把√取消掉&#xff0c;修改后&#xff1a; 确定…

告别ELK,APO提供基于ClickHouse开箱即用的高效日志方案——APO 0.6.0发布

ELK一直是日志领域的主流产品&#xff0c;但是ElasticSearch的成本很高&#xff0c;查询效果随着数据量的增加越来越慢。业界已经有很多公司&#xff0c;比如滴滴、B站、Uber、Cloudflare都已经使用ClickHose作为ElasticSearch的替代品&#xff0c;都取得了不错的效果&#xff…

【Echarts 实战指南】解锁动态历史曲线之谜

在工作中&#xff0c;大家是否曾遇到过这样一种需求呢&#xff1f;需获取设备最近 10 分钟的历史数据。设备实时数据每 2 秒推送一次&#xff0c;且要把历史数据曲线变成动态变化的状态。倘若设备最近 10 分钟的历史数据为 20 个点&#xff0c;那么现在每 2 秒就要将最前面的点…

计算机毕业设计Python深度学习房价预测 房源可视化 房源爬虫 二手房可视化 二手房爬虫 递归决策树模型 机器学习 深度学习 大数据毕业设计

温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 房地产是促进我国经济持续增…

车辆管理新篇章:SpringBoot技术解析

2相关技术 2.1 MYSQL数据库 MySQL是一个真正的多用户、多线程SQL数据库服务器。 是基于SQL的客户/服务器模式的关系数据库管理系统&#xff0c;它的有点有有功能强大、使用简单、管理方便、安全可靠性高、运行速度快、多线程、跨平台性、完全网络化、稳定性等&#xff0c;非常…

电感的学习

电感是表示电路中电流变化对电压影响的物理量&#xff0c;常用符号 LLL 表示。电感的基本公式可以从其定义和基本特性中得出&#xff0c;主要包括以下几个方面&#xff1a; 1. 电感的定义 2. 电感能量存储 3. 自感与互感 自感&#xff1a;电感器自身的电感&#xff0c;表示电…