当前位置:首页 > uni-app

uniapp 语法分析

2026-03-05 10:11:05uni-app

uniapp 语法基础

uniapp 基于 Vue.js 语法,同时扩展了跨平台能力。核心语法包括 Vue 的模板、脚本和样式三部分,结合条件编译实现多端适配。

模板语法
使用 Vue 的模板语法,支持指令如 v-ifv-for 和事件绑定 @click。uniapp 扩展了原生组件,例如 <view> 替代 <div><text> 替代 <span>

<template>
  <view @click="handleClick">
    <text v-if="showText">{{ message }}</text>
  </view>
</template>

脚本语法
遵循 Vue 的选项式 API 或组合式 API(需搭配 setup)。生命周期钩子与 Vue 一致,新增 onLaunchonShow 等应用级生命周期。

<script>
export default {
  data() {
    return { message: 'Hello uniapp', showText: true }
  },
  methods: {
    handleClick() {
      console.log('Clicked');
    }
  }
}
</script>

样式语法
支持 CSS 预处理器(如 SCSS、Less),通过 <style> 标签编写。使用 rpx 单位适配不同屏幕。

<style>
view { padding: 20rpx; }
text { color: #007AFF; }
</style>

条件编译

通过特殊注释实现多端代码差异化,语法格式为 #ifdef#ifndef#endif

// #ifdef H5
console.log('仅在H5平台生效');
// #endif

跨端 API 调用

uniapp 提供统一 API 封装原生功能,如网络请求、存储、地理位置等。

uni.request({
  url: 'https://example.com/api',
  success: (res) => { console.log(res.data); }
});

组件与插件

  • 内置组件:如 <swiper><scroll-view>,直接按文档使用。
  • 自定义组件:通过 components 目录创建,支持全局或局部注册。
  • 插件市场:通过 uni_modules 引入第三方插件,扩展功能。

路由与页面跳转

使用 uni.navigateTouni.redirectTo 等 API 管理页面栈,路由配置在 pages.json 中定义。

// pages.json
{
  "pages": [
    { "path": "pages/index/index", "style": { "navigationBarTitleText": "首页" } }
  ]
}

状态管理

支持 Vuex 或 Pinia(需手动配置)。Vuex 示例:

uniapp 语法分析

import Vuex from 'vuex';
const store = new Vuex.Store({
  state: { count: 0 },
  mutations: { increment(state) { state.count++ } }
});

注意事项

  • 避免使用浏览器专属 API(如 document),需替换为 uniapp API。
  • 多端适配时,通过 uni.getSystemInfoSync() 获取平台信息。
  • 调试时使用 HBuilderX 或开发者工具,支持真机预览。

通过结合 Vue 语法与 uniapp 扩展能力,可高效开发跨平台应用。

标签: 语法uniapp
分享给朋友:

相关文章

uniapp 滑动

uniapp 滑动

uniapp 实现滑动效果的方法 在uniapp中实现滑动效果可以通过多种方式,包括使用内置组件、CSS动画或第三方插件。以下是几种常见的方法: 使用scroll-view组件 scroll-vi…

美颜uniapp

美颜uniapp

美颜功能在UniApp中的实现方法 在UniApp中实现美颜功能,可以通过以下几种方式: 使用第三方SDK或插件 腾讯云美颜SDK:提供直播推流场景下的美颜、滤镜、贴纸等功能,支持UniApp集成…

uniapp和vue有什么区别

uniapp和vue有什么区别

核心区别 uniapp是一个基于Vue.js的跨平台开发框架,主要用于开发多端应用(如小程序、H5、App等),而Vue.js是一个专注于构建用户界面的渐进式JavaScript框架。 开发目标 u…

uniapp删除

uniapp删除

uniapp删除数据的方法 在uniapp中删除数据通常涉及前端操作和与后端API的交互。以下是常见的几种删除数据的方式: 前端数据删除 使用splice方法从数组中删除指定元素: let lis…

uniapp倒计时

uniapp倒计时

uniapp倒计时实现方法 使用setInterval实现基础倒计时 在uniapp中可以通过setInterval和clearInterval实现基础的倒计时功能。创建一个倒计时组件或页面方法:…

uniapp即时通讯

uniapp即时通讯

uniapp 即时通讯实现方法 使用第三方 SDK 或服务 市面上有许多成熟的即时通讯 SDK 和服务可以集成到 uniapp 中,例如融云、环信、腾讯云通信等。这些服务通常提供完善的 API 和文档…