uni-app和vue的区别
1、目录不同

uni-app目录依赖原生小程序风格,比如分包的概念

vue中对不同的页面只需要在views文件夹中定义不同组件,然后配置路由跳转就行了,所有页面都是这样,

而uni-app只有底部导航栏对应的几个页面才能定义在pages文件夹下,其余的页面都需要定义在subpkg文件夹下

2、对页面之间跳转的路由配置不同

uni-app在package.json文件中对底部导航栏页面和其他分包页面的路由进行配置

而vue统一在router文件夹下进行路由配置,且文件夹名没有限制

3、页面使用的标签不同

uni-app标签使用小程序使用的<view></view>、<block></block>等

uni-app中的部分标签是已经封装好了的功能,例如<swiper>轮播图标签,<scroll>滚动标签,只需要使用这些标签就可以实现对应功能

而vue中轮播图功能需要引入组件库使用组件库提供的标签或者自己通过很多代码来实现,滚动功能vue中需要使用better-scroll插件来实现,引入插件之后实现滚动功能包括监听滚动事件,实现上拉刷新等

4、生命周期函数不同

uni-app使用onLoad()等生命周期函数,且生命周期函数分为三类,而vue一套生命周期函数通用

5、一部分api不同

比如uni-app使用uni.$navigateTo()等进行页面的跳转,而vue使用this.$router.push()等进行跳转

6、接收路由传递参数方式不同

uni-app统一在onLoad(options)生命周期函数中携带的options参数获取路由传递的参数,

而vue通过this.$route.query获取路由参数

7、对组件挂载配置不同

vue生成的组件都要在使用的父组件身上引用定义成为局部组件,也可以在main.js中挂载成为全局组件

而uni-app只需要在components文件夹下新建组件文件,不需要进行任何挂载,直接使用就行了,组件使用的名字就是components文件夹里定义组件的文件名

8、css样式适配单位不一样

小程序使用rpx进行适配,vue使用rem/vm进行适配

9、用户登录操作的步骤不一样

vue:获取用户的用户名和密码等直接发送请求从后端获取数据和token信息完成登录

小程序:需要先进行微信通过uni.getUserProfile拉取用户信息,然后再调用uni.login()获取登录凭证code,最后才能通过前面两步获取到的参数向服务器发送请求获取token信息完成登录

uni-app和微信小程序的区别

 

1、页面标签 基本相同

view,text、scroll-view,input、picker、swiper等等

2、api基本相同,wx换成uni即可

原生写法:wx.request、wx.showModal、wx.showToast、wx.showLoading、wx.chooseImage、wx.switchTab、wx.navigateTo、wx.setStorageSync等等

uniapp写法:uni.request,uni.showModal、uni.showToast、uni.showLoading、uni.chooseImage、uni.switchTab、uni.navigateTo、uni.setStorageSync等等

3、生命周期函数相同

onLoad,onShow,onPullDownRefresh、onReachBottom、onShareAppMessage等等

点击事件写法不同

原生小程序是bindtap

<image bindtap="preview"></image>

uniapp是@click

<image @click="preview"></image>

传参方式不同

原生写法是data-xxx

<image bindtap="preview" data-src = '{{item.src}}' ></image>

  preview(e) {
   console.log( e.currentTarget.dataset.src)
  },

uniapp写法

<image @click="preview(item.src)" ></image>

  preview(src) {
   console.log(src)
  },
 
input的value值绑定并监听
原生写法是    <input value='{{sex}}' bindinput='jianting'></input>
jianting(e){ //实时监听
console.log(e.detail.value)
}
 
uniapp写法是 <input v-model='sex'></input>
 
属性绑定
 
原生写法是   <image src='{{src}}' ></image>
uniapp写法是 <input :src='src'></input>
 
更新视图方法
 
原生写法

 this.setData({
      data: 1
    })
 
uniapp写法是 this.data = 1
 
列表循环
 原生写法 <view class="flexcost mtb30" wx:for="{{list}}" wx:key='item.goodsOrderId' >{{item.name}}</view> //默认是item
 uniapp写法 <view v-for="(item, index) in list" :key="item.goodsOrderId">{{item.name}}</view>

uni-app和vue及微信小程序的异同的更多相关文章

  1. 只会Vue怎么开发小程序?vue和微信小程序的到底有哪些区别?

    写了vue项目和小程序,发现二者有许多相同之处,在此想总结一下二者的共同点和区别. 一.生命周期 先贴两张生命周期图对比下: vue生命周期 小程序生命周期 相比之下,小程序的钩子函数要简单得多. v ...

  2. 使用Vue开发微信小程序:mpvue框架

    使用Vue开发微信小程序:mpvue框架:https://www.jianshu.com/p/8f779950bfd9

  3. 学了这么久,vue和微信小程序到底有什么样的区别?

    前言 写了vue项目和小程序,发现二者有许多相同之处,在此想总结一下二者的共同点和区别.相比之下,小程序的钩子函数要简单得多. 一.生命周期 先贴两张图: vue生命周期 小程序生命周期   相比之下 ...

  4. vue和微信小程序的区别、比较

    链接:https://segmentfault.com/a/1190000015684864 一.生命周期 先贴两张图: vue生命周期 小程序生命周期 相比之下,小程序的钩子函数要简单得多. vue ...

  5. uni-app - vue以及微信小程序

    uni-app结合了mpvue的优点以及微信小程序的优点 ,uni-app基于vue2.0的. 组件:https://uniapp.dcloud.io/component/README 接口:http ...

  6. taro + iview 实现跨平台开发(App,Wap,微信小程序)

    1.安装 (1)安装脚手架 npm install -g @tarojs/cli taro init myApp (2)H5端运行 npm run dev:h5 taro build --type h ...

  7. Spring Boot后端+Vue前端+微信小程序,完整的开源解决方案!

    项目简介 一个小商场系统,包括: 后端:Spring Boot 管理员前端:Vue 用户前端:微信小程序 功能介绍 1.小商城 首页 专题列表.专题详情 分类列表.分类详情 品牌列表.品牌详情 新品首 ...

  8. vue过滤器微信小程序过滤器和百度智能小程序过滤器

    因为最近写了微信小程序和百度小程序,用到了过滤器,感觉还挺好用的,所以就来总结一下,希望能帮到你们. 1. 微信小程序过滤器: 1.1:首先建一个单独的wxs后缀的文件,一般放在utils文件夹里面. ...

  9. Vue和微信小程序区别

    一.生命周期 先贴两张图: vue生命周期 小程序生命周期 相比之下,小程序的钩子函数要简单得多. vue的钩子函数在跳转新页面时,钩子函数都会触发,但是小程序的钩子函数,页面不同的跳转方式,触发的钩 ...

  10. vue 开发微信小程序

    介绍 mpvue (github 地址请参见)是一个使用 Vue.js 开发小程序的前端框架.框架基于 Vue.js 核心,mpvue 修改了 Vue.js的 runtime 和 compiler 实 ...

随机推荐

  1. ARC108C

    考虑一颗树怎么染色. 每个子节点染成边的颜色,如果与父亲节点相同,就随便染色(这条边的限制已经被父亲节点满足). 那么一定可以染色. 所以把原图跑最小生成树再按上述方法染色即可. 倘若原图不连通,那么 ...

  2. cf edu 133 D

    题意 思路 根据题意,最开始可以想到一个二维的dp状态 用dp[i][j]表示跳了j次刚好到i的方案数 如果是跳了j次,那么这次应该要被k+j-1整除才行 那么这样状态转移就是 dp[i][j] = ...

  3. JavaScript处理后端返回PDF文件流,在线预览下载PDF文件

    在实际开发业务中,遇到这一需求,即后端返回的pdf文件,是以base64文件流的方式,在此不便操作接口响应等操作,便以上传一个文件转化为文件流的形式模拟 实际应用时,base64Img = res.d ...

  4. [oeasy]python0144_try的完全体_否则_else_最终_finally

    try的完全体 回忆上次内容   上次细化了主控程序(main.py) 导入(get_fruits.py) 处理(process.py) 输出(output.py)   使用了 try 结构 try ...

  5. [oeasy]python0096_游戏娱乐行业_雅达利_米洛华_四人赛马_影视结合游戏

    游戏娱乐行业 回忆上次内容 游戏机行业从无到有 雅达利 公司 一枝独秀 并且带领 行业 发展起来 雅达利公司 优秀员工 乔布斯 在 朋友 帮助下完成了<pong> Jobs 黑了 Woz ...

  6. Vue Axios二次封装

    // axios二次封装 import axios from 'axios' import qs from 'qs' /*** *判断环境变量区分接口的默认地址 */ switch (process. ...

  7. 学习笔记--Java合集

    学习笔记--Java合集 JDK8 基础篇 我的第一个Java程序 Java标识符 Java 字面值 Java中的变量 Java中的数据类型 Java 运算符 Java 控制语句 方法 Java方法基 ...

  8. Win10下安装LabelImg以及使用--LabelImg

    labelImg是图片标注软件,用于数据集的制作.标注等等.下面介绍labelImg的安装过程. 我用的是anaconda,所以以anaconda prompt作为终端: 在Anaconda Prom ...

  9. 亚马逊 vpc 子网 路由表 互联网网关 弹性ip

    创建vpc,子网,路由表,互联网网关,弹性ip等网络资源 vpc和子网 创建互联网网关 附加到vpc 创建路由表 路由表编辑路由 此路由通过这个网关出去 编辑子网关联 保存关联 有关云主机 创建属于那 ...

  10. chromedriver.exe存放位置

    chromedriver.exe存放位置 如果chromedriver.exe存放位置不对的话,driver=webdriver.Chrome() 会报错! 一般需要存放在python下面的Scrip ...