微信小程序的基础知识储备
资源路径说明
- template内引入静态资源,如image、video等标签的src属性时,可以使用相对路径或者绝对路径
<!-- 绝对路径,/static指根目录下的static目录,在cli项目中/static指src目录下的static目录 --> <image class="logo" src="/static/logo.png"></image> <image class="logo" src="@/static/logo.png"></image> <!-- 相对路径 --> <image class="logo" src="../../static/logo.png"></image>
- js文件或script标签内(包括renderjs等)引入js文件时,可以使用相对路径和绝对路径。js文件不支持使用/开头的方式引入
// 绝对路径,@指向项目根目录,在cli项目中@指向src目录 import add from '@/common/add.js' // 相对路径 import add from '../../common/add.js'
- css文件或style标签内引入css文件时(scss、less文件同理),可以使用相对路径和绝对路径。
/* 绝对路径 */
@import url('/common/uni.css');
@import url('@/common/uni.css');
/* 相对路径 */
@import url('../../common/uni.css');- css文件或style标签内引用的图片路径可以使用相对路径也可以使用绝对路径,需要注意的是,有些小程序端css文件不允许引用本地文件
/* 绝对路径 */ background-image: url(/static/logo.png); background-image: url(@/static/logo.png); /* 相对路径 */ background-image: url(../../static/logo.png);
生命周期
应用生命周期
页面生命周期
Vue生命周期
路由
uni-app路由统一有框架管理,开发者需要在pages.json里配置每个路由页面的路径及页面样式。如仍希望采用 Vue Router 方式管理路由,可在插件市场搜索 Vue-Router。
路由跳转
uni-app 有两种页面路由跳转方式:使用navigator组件跳转、调用API跳转
页面栈
运行环境判断
// uEnvDev
if (process.env.NODE_ENV === 'development') {
// TODO
}
// uEnvProd
if (process.env.NODE_ENV === 'production') {
// TODO
}页面样式与布局
单位
px为屏幕像素,rpx响应式px,它们之间的换算公式为750 * 元素在设计稿中的宽度 / 设计稿基准宽度
样式导入
<style>
@import "../../common/uni.css";
.uni-card {
box-shadow: none;
}</style>flex布局
<style>/*主要有两个概念 容器与项目*/
.container{
display: flex;
flex-direction:row;
flex-wrap:nowrap;
flex-flow: row nowrap;/*简写方式*/
justify-content: center;/*定义项目在主轴上的对齐方式*/
align-items:center;/*定义项目在交叉轴上如何对齐*/}.item {
order: 1;
flex-grow:0;/*定义项目的放大比例*/
flex-shrink:1;/*定义了项目的缩小比例*/
align-self:auto;/*单个项目有与其他项目不一样的对齐方式*/}</style>定义全局变量
- 共用模块
- Vue.prototype
- globalData
- Vuex
参考文章 uni-app全局变量的几种实现方式
class与style绑定
支持数组合对象的方式
计算属性
计算属性是基于它们的响应式依赖进行缓存的
条件渲染
v-if v-show
列表渲染
v-for 注意携带key
事件处理
// 事件映射表,左侧为 WEB 事件,右侧为 ``uni-app`` 对应事件{
click: 'tap',
touchstart: 'touchstart',
touchmove: 'touchmove',
touchcancel: 'touchcancel',
touchend: 'touchend',
tap: 'tap',
longtap: 'longtap', //推荐使用longpress代替
input: 'input',
change: 'change',
submit: 'submit',
blur: 'blur',
focus: 'focus',
reset: 'reset',
confirm: 'confirm',
columnchange: 'columnchange',
linechange: 'linechange',
error: 'error',
scrolltoupper: 'scrolltoupper',
scrolltolower: 'scrolltolower',
scroll: 'scroll'}表单控件绑定
推荐使用uni-app的表单组件
组件分为全局组件和局部组件
都存在类似的操作,即导入,注册,使用
常见问题
1、如何获取上个页面传递的数据
onLoad(args)
2、如何设置全局的数据和全局的方法
vuex(uni-app已经内置了vuex)
uni-app自带统计平台,只要稍作配制就可以使用
uni统计官网地址:tongji.dcloud.net.cn/
以上就是微信小程序的基础知识储备的详细内容,更多请关注其它相关文章!
小程序开发