将小程序代码转成uni-app代码

news/2024/7/20 3:28:36 标签: uni-app, 微信小程序, 小程序

最近因为公司项目原因需要将小程序的项目转换成uni—app的项目,所以总结了以下几点:

 

首先你可以先到uni-app的官网简单看一下对它的介绍,本次文章的介绍是针对简单的小程序>微信小程序来进行的转化。

在这之前我们来看一下目录对比

 

下面就来介绍一下转移的步骤

1、首先你要新创建一个uniapp项目,然后在pages文件下创建一个目录,随便创建,你这里和你小程序的项目名称保持一致也是可以的。然后我这里给一个示例:我在pages文件下新建了目录 demo 然后在它之下创建了demo.vue 文件

<template>
</template>
 
<script>
</script>
 
<style>
</style>

 2.在pages.json里配置它的路由信息。

 

"pages": [ 
		{
			"path": "pages/index/index",
			"style": {
				"navigationBarTitleText": "万景千言"
			}
		},
		
        
    ],

 

3.接下来就可以进行转移了

3.1、把小程序 .wxml 的下的布局文件 都拷贝到 <template> 标签下

3.2、把 小程序样式文件 .wxss 样式 都拷贝到  <style>文件下 这里的 style 可以  加上scoped  就是只对自己引用,防止布局乱了 <style scoped>

3.3、接下来就要修改 标签的一些属性方法的用法了,这里只介绍我遇到了,没有介绍到的可以到官网进行查看。

列表渲染

小程序中这样使用
 

<view class='item' wx:for="{{lesson}}" wx:key="ID" wx:for-item="item">

uni-app中要这样使用 是vue的用法

<view class='item' v-for="(item,index) in lessonto " :key="index">

条件语句

小程序中这样使用

 <label id="btnCollect_40" data-id='{{item.ID}}' wx:if="{{item.iscollection}}">已收藏</label>
 <label id="btnCollect_40"  class='deletecolor' bindtap="collectionClick" data-id='{{item.ID}}' wx:else>收藏</label>

 在uni-app中要这样使用  vue用法

<button v-if="item.iscollection" class="deletecolorto" type="primary" size="mini">已收藏</button>

class的动态绑定 

小程序中这样使用

<view class="div {{scope=='all'?'selected':''}}" catchtap='selecttype' data-type='all'>所有资料</view>

uni-app中要这样使用 

<view class='itop' :class="{kai:item.isopen}">

点击事件 

 在小程序中:用 bindtap

 <label id="btnCollect_40"  class='deletecolor' bindtap="collectionClick" data-id='{{item.ID}}' wx:else>收藏</label>

uni-app中要这样使用  @click

<view class="shareto" hover-class="shareto_on" @click='showPgFn'>

向方法里传递数据 

小程序中  使用data-   (在小程序中  使用data-   小程序的方法不支持直接传递数据)

 <view class="bookimage"  bindtap='ShowResourceList' data-id='{{item.ID}} '>

uni-app中 方法传递数据和 vue一样

<view class="bookimage" @click='ShowResourceList(item.ID)'>

 

组件的事件方法参考文档对应修改  

4、最后一步,就是把 小程序里的 js 写的方法放在  script标签下 

声明数据

小程序中,直接放在data中,用this.data.img 调用

在uniapp中需要将数据放在

 

 

自定义方法的使用

小程序的可以直接声明使用 

bindViewTap() {
    wx.navigateTo({
      url: '../logs/logs'
    })
  },

uniapp的大部分放在methods里面可以直接使用,一些特殊的根据实际情况进行一些修改

	methods: {
			gototuiguang: function(options) {
				uni.navigateTo({
					url: '/pages/tuiguang/tuiguang', //要跳转到的页面路径
				})
			},
			getUserName(e) {
				console.log(e.detail.value.nickname); //用户输入或者选择的昵称
			},
			denglu: function() {
				uni.navigateTo({
					url: '/pages/login/login', //要跳转到的页面路径
				})
			},
		}

大概就是总结这么多了,如果有那些写错了欢迎大家指点指点!!!


http://www.niftyadmin.cn/n/62304.html

相关文章

175 moment

175 moment 用途 A JavaScript date library for parsing, validating, manipulating, and formatting dates. 可以把日期对象和日期字符串进行准换&#xff1b;标准时间和全球不同时区的转换(这个国际化项目中使用较多) 比较两个日期对象的相对时间&#xff1b;显示成不同的语…

手写识别字体的步骤是什么?怎么识别图片中的文字?

手写识别字体的步骤是什么&#xff1f;怎么识别图片中的文字&#xff1f; 1. 打开信风工具网&#xff0c;点击拍照按钮&#xff0c;选择拍图识字模式&#xff0c;对准需要识别的文件进行拍摄&#xff61;在线工具地址&#xff1a; https://ocr.bytedance.zj.cn/image/ImageT…

【GD32F427开发板试用】7. 移植LVGL到GD32F427V

本篇文章来自极术社区与兆易创新组织的GD32F427开发板评测活动&#xff0c;更多开发板试用活动请关注极术社区网站。作者&#xff1a;hehung 之前发帖 【GD32F427开发板试用】1. 串口实现scanf输入控制LED 【GD32F427开发板试用】2. RT-Thread标准版移植 【GD32F427开发板试用…

促进关键软件高层次人才培养:平凯星辰与华东师范大学签订联合博士培养合作协议

2022 年年初&#xff0c;平凯星辰入选首批工信部教育部支持联合培养国家关键软件高层次人才计划。该计划旨在探索关键软件产教融合育人模式&#xff0c;超常规加快培养一批急需高层次人才&#xff0c;以及探索关键软件联合技术攻关新模式。2022 年年底&#xff0c;在该计划下 平…

Python赋值运算符(入门必读)

赋值运算符用来把右侧的值传递给左侧的变量&#xff08;或者常量&#xff09;&#xff1b;可以直接将右侧的值交给左侧的变量&#xff0c;也可以进行某些运算后再交给左侧的变量&#xff0c;比如加减乘除、函数调用、逻辑运算等。 Python 中最基本的赋值运算符是等号&#xff…

算法 ——世界 一

个人简介&#xff1a;云计算网络运维专业人员&#xff0c;了解运维知识&#xff0c;掌握TCP/IP协议&#xff0c;每天分享网络运维知识与技能。个人爱好: 编程&#xff0c;打篮球&#xff0c;计算机知识个人名言&#xff1a;海不辞水&#xff0c;故能成其大&#xff1b;山不辞石…

第十二章 Ambari二次开发之集成Alluxio

1、Alluxio高可用部署 生产环境&#xff1a;使用具有高可用性的模式来运行Alluxio masters。 1.1、Alluxio架构 ​ Alluxio可以被分为三个部分&#xff1a;**masters、workers以及clients。**一个典型的设置由一个主服务器、多个备用服务器和多个worker组成。客户端用于通过S…

由浅入深,聊聊OkHttp的那些事(很长,很细节)

引言 在 Android 开发的世界中&#xff0c;有一些组件&#xff0c;无论应用层技术再怎么迭代&#xff0c;作为基础支持&#xff0c;它们依然在那里。 比如当我们提到网络库时&#xff0c;总会下意识想到一个名字&#xff0c;即 OkHttp 。 尽管对于大多数开发者而言&#xff0…