当前位置:首页 > 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框架特性 跨端实现原理及条件编译的使用场景 如何理解"一次开发,多端运行"的优缺点 rpx与vw/vh单位的适配差异 Vue相关 生命周期在UniA…

uniapp中如何引用echarts

uniapp中如何引用echarts

在uniapp中引用echarts uniapp中引用echarts可以通过原生方式或第三方插件实现,以下是具体方法: 使用原生echarts 安装echarts依赖 在项目根目录下执行命令:…

uniapp实现标题栏渐变

uniapp实现标题栏渐变

实现标题栏渐变的方法 在UniApp中实现标题栏渐变效果,可以通过修改页面的导航栏样式或使用自定义导航栏来实现。以下是几种常见的方法: 方法一:使用原生导航栏渐变 通过修改pages.json中的…

uniapp 数据

uniapp 数据

uniapp 数据管理方法 本地存储 使用 uni.setStorageSync 和 uni.getStorageSync 进行本地数据持久化存储。适合保存用户偏好设置或小型数据。 // 存储数…

uniapp定位描述

uniapp定位描述

uniapp定位功能实现 uniapp提供了多种定位方式,包括H5、小程序和App端的定位功能。通过uni.getLocation方法可以获取设备当前位置信息。 基本定位方法 使用uni.getLo…

uniapp 成功案例

uniapp 成功案例

成功案例概览 UniApp 凭借跨平台开发能力,已被多个行业采用,涵盖电商、社交、教育、政务等领域。以下为部分典型案例: 京东拼购 京东拼购(现为“京喜”)采用 UniApp 开发,实现微信小程序、…