uniapp 各方法指令使用说明

全局配置

Vue 全局配置 描述 H5 App端 微信小程序 说明
Vue.config.silent 取消 Vue 所有的日志与警告 详情(opens new window)  
Vue.config.optionMergeStrategies 自定义合并策略的选项 详情(opens new window)  
Vue.config.devtools 配置是否允许 vue-devtools 检查代码 详情(opens new window) x x 只在Web环境下支持
Vue.config.errorHandler 指定组件的渲染和观察期间未捕获错误的处理函数 详情(opens new window)  
Vue.config.warnHandler 为 Vue 的运行时警告赋予一个自定义处理函数 详情(opens new window)  
Vue.config.ignoredElements 须使 Vue 忽略在 Vue 之外的自定义元素 详情(opens new window) 强烈不推荐,会覆盖uni-app框架配置的内置组件
Vue.config.keyCodes 给 v-on 自定义键位别名 详情(opens new window) x x  
Vue.config.performance 设置为 true 以在浏览器开发工具的性能/时间线面板中启用对组件初始化、编译、渲染和打补丁的性能追踪 详情(opens new window) x x 只在Web环境下支持
Vue.config.productionTip 设置为 false 以阻止 vue 在启动时生成生产提示 详情(opens new window) -

 

全局 API

Vue 全局 API 描述 H5 App端 微信小程序 说明
Vue.extend 使用基础 Vue 构造器,创建一个“子类” 详情(opens new window) x 不可作为组件使用
Vue.nextTick 在下次 DOM 更新循环结束之后执行延迟回调 详情(opens new window) x x  
Vue.set 向响应式对象中添加一个 property,并确保这个新 property 同样是响应式的,且触发视图更新 详情(opens new window)  
Vue.delete 删除对象的 property。如果对象是响应式的,确保删除能触发更新视图 详情(opens new window)  
Vue.directive 注册或获取全局指令 详情(opens new window) x  
Vue.filter 注册或获取全局过滤器 详情(opens new window) x  
Vue.component 注册或获取全局组件。注册还会自动使用给定的 id 设置组件的名称 详情(opens new window)  
Vue.use 安装 Vue.js 插件 详情(opens new window)  
Vue.mixin 全局注册一个混入,影响注册之后所有创建的每个 Vue 实例 详情(opens new window)  
Vue.version 提供字符串形式的 Vue 安装版本号 详情(opens new window)  
Vue.compile 将一个模板字符串编译成 render 函数。只在完整版时可用。详情(opens new window) x x uni-app使用的vue是只包含运行时的版本

 

选项

Vue 选项 描述 H5 App端 微信小程序 说明
data Vue 实例的数据对象 详情(opens new window)  
props props 可以是数组或对象,用于接收来自父组件的数据 详情(opens new window)  
propsData 创建实例时传递 props。主要作用是方便测试 详情(opens new window)  
computed 计算属性将被混入到 Vue 实例中 详情(opens new window)  
methods methods 将被混入到 Vue 实例中 详情(opens new window)  
watch 一个对象,键是需要观察的表达式,值是对应回调函数 详情(opens new window)  
el 提供一个在页面上已存在的 DOM 元素作为 Vue 实例的挂载目标 详情(opens new window) x x  
template 一个字符串模板作为 Vue 实例的标识使用 详情(opens new window) x x uni-app使用的vue是只包含运行时的版本
render 字符串模板的代替方案,该渲染函数接收一个 createElement 方法作为第一个参数用来创建 VNode。详情(opens new window) x x  
renderError 当 render 函数遭遇错误时,提供另外一种渲染输出,只在开发者环境下工作 详情(opens new window) x x  
directives 包含 Vue 实例可用指令的哈希表 详情(opens new window) x  
filters 包含 Vue 实例可用过滤器的哈希表 详情(opens new window)  
components 包含 Vue 实例可用组件的哈希表 详情(opens new window)  
parent 指定已创建的实例之父实例,在两者之间建立父子关系 详情(opens new window) 不推荐
mixins 选项接收一个混入对象的数组 详情(opens new window)  
extends 允许声明扩展另一个组件 详情(opens new window)  
provide/inject 允许一个祖先组件向其所有子孙后代注入一个依赖,不论组件层次有多深,并在其上下游关系成立的时间里始终生效 详情(opens new window)  
name 允许组件模板递归地调用自身 详情(opens new window)  
delimiters 改变纯文本插入分隔符 详情(opens new window) x x  
functional 使组件无状态 (没有 data) 和无实例 (没有 this 上下文) 详情(opens new window) x x  
model 允许一个自定义组件在使用 v-model 时定制 prop 和 event 详情(opens new window) x  
inheritAttrs inheritAttrs属性默认值为true,表示允许组件的根节点继承$attrs包含的属性 详情(opens new window) x  
comments 当设为 true 时,将会保留且渲染模板中的 HTML 注释 详情(opens new window) x x -

 

生命周期

生命周期钩子 描述 H5 App端 微信小程序 说明
beforeCreate 在实例初始化之后被调用 详情(opens new window)  
created 在实例创建完成后被立即调用 详情(opens new window)  
beforeMount 在挂载开始之前被调用 详情(opens new window)  
mounted 挂载到实例上去之后调用 详情 (opens new window)注意:此处并不能确定子组件被全部挂载,如果需要子组件完全挂载之后在执行操作可以使用$nextTick 详情(opens new window)  
beforeUpdate 数据更新时调用,发生在虚拟 DOM 打补丁之前 详情(opens new window)  
updated 由于数据更改导致的虚拟 DOM 重新渲染和打补丁,在这之后会调用该钩子 详情(opens new window)  
activated 被 keep-alive 缓存的组件激活时调用 详情(opens new window) x  
deactivated 被 keep-alive 缓存的组件停用时调用 详情(opens new window) x  
beforeDestroy 实例销毁之前调用。在这一步,实例仍然完全可用 详情(opens new window)  
destroyed Vue 实例销毁后调用。调用后,Vue 实例指示的所有东西都会解绑定,所有的事件监听器会被移除,所有的子实例也会被销毁 详情(opens new window)  
errorCaptured 当捕获一个来自子孙组件的错误时被调用 详情(opens new window) -

 

实例属性

Vue 实例属性 描述 H5 App端 微信小程序 说明
vm.$data Vue 实例观察的数据对象 详情(opens new window)  
vm.$props 当前组件接收到的 props 对象 详情(opens new window)  
vm.$el Vue 实例使用的根 DOM 元素 详情(opens new window) x x  
vm.$options 用于当前 Vue 实例的初始化选项 详情(opens new window)  
vm.$parent 父实例,如果当前实例有的话 详情(opens new window) H5端 viewtext 等内置标签是以 Vue 组件方式实现,$parent 会获取这些到内置组件,导致的问题是 this.$parent 与其他平台不一致,解决方式是使用 this.$parent.$parent 获取或自定义组件根节点由 view 改为 div
vm.$root 当前组件树的根 Vue 实例 详情(opens new window)  
vm.$children 当前实例的直接子组件 详情(opens new window) H5端 viewtext 等内置标签是以 Vue 组件方式实现,$children 会获取到这些内置组件,导致的问题是 this.$children 与其他平台不一致,解决方式是使用 this.$children.$children 获取或自定义组件根节点由 view 改为 div
vm.$slots 用来访问被插槽分发的内容 详情(opens new window) x  
vm.$scopedSlots 用来访问作用域插槽 详情(opens new window)  
vm.$refs 一个对象,持有注册过 ref attribute 的所有 DOM 元素和组件实例详情(opens new window) 非H5端只能用于获取自定义组件,不能用于获取内置组件实例(如:view、text)
vm.$isServer 当前 Vue 实例是否运行于服务器 详情(opens new window) x App端总是返回false
vm.$attrs 包含了父作用域中不作为 prop 被识别 (且获取) 的 attribute 绑定 详情(opens new window) x  
vm.$listeners 包含了父作用域中的 (不含 .native 修饰器的) v-on 事件监听器 详情(opens new window) x -

 

实例方法

实例方法 描述 H5 App端 微信小程序 说明
vm.$watch() 观察 Vue 实例上的一个表达式或者一个函数计算结果的变化 详情(opens new window)  
vm.$set() 这是全局 Vue.set 的别名 详情(opens new window)  
vm.$delete() 这是全局 Vue.delete 的别名 详情(opens new window)  
vm.$on() 监听当前实例上的自定义事件 详情(opens new window)  
vm.$once() 监听一个自定义事件,但是只触发一次 详情(opens new window)  
vm.$off() 移除自定义事件监听器 详情(opens new window)  
vm.$emit() 触发当前实例上的事件 详情(opens new window)  
vm.$mount() 手动地挂载一个未挂载的实例 详情(opens new window) x x  
vm.$forceUpdate() 迫使 Vue 实例重新渲染 详情(opens new window)  
vm.$nextTick() 将回调延迟到下次 DOM 更新循环之后执行 详情(opens new window)  
vm.$destroy() 完全销毁一个实例 详情(opens new window) -

 

模板指令

Vue 指令 描述 H5 App端 微信小程序 说明
v-text 更新元素的 textContent 详情(opens new window)  
v-html 更新元素的 innerHTML 详情(opens new window) x 微信小程序会被转成 rich-text
v-show 根据表达式之真假值,切换元素的 display CSS属性 详情(opens new window)  
v-if 根据表达式的值的 truthiness 来有条件地渲染元素 详情(opens new window)  
v-else 为 v-if 或者 v-else-if 添加“else 块” 详情(opens new window)  
v-else-if 表示 v-if 的“else if 块”。可以链式调用 详情(opens new window)  
v-for 基于源数据多次渲染元素或模板块 详情(opens new window)  
v-on 绑定事件监听器 详情(opens new window)  
v-bind 动态地绑定一个或多个 attribute,或一个组件 prop 到表达式 详情(opens new window)  
v-model 在表单控件或者组件上创建双向绑定 详情(opens new window)  
v-pre 跳过这个元素和它的子元素的编译过程 详情(opens new window) x  
v-cloak 这个指令保持在元素上直到关联实例结束编译 详情(opens new window) x x  
v-once 只渲染元素和组件一次 详情(opens new window) x -

 

特殊属性

特殊属性 描述 H5 App端 微信小程序 说明
key 主要用在 Vue 的虚拟 DOM 算法,在新旧 nodes 对比时辨识 VNodes 详情(opens new window)  
ref ref 被用来给元素或子组件注册引用信息 详情(opens new window) 非 H5 平台只能获取 vue 组件实例不能获取到内置组件实例
is 用于动态组件且基于 DOM 内模板的限制来工作 详情(opens new window) x -

 

内置组件

内置组件 描述 H5 App端 微信小程序 说明
component 渲染一个“元组件”为动态组件。依 is 的值,来决定哪个组件被渲染 详情(opens new window) x  
transition 作为单个元素/组件的过渡效果 详情(opens new window) x x  
transition-group 作为多个元素/组件的过渡效果 详情(opens new window) x x  
keep-alive 包裹动态组件时,会缓存不活动的组件实例,而不是销毁它们 详情(opens new window) x x  
slot 作为组件模板之中的内容分发插槽 详情(opens new window) -
template 并不是一个组件,它仅仅是一个包装元素,不会在页面中做任何渲染,只接受控制属性 详情(opens new window) -
posted @ 2022-07-12 17:02  蓦然JL  阅读(1329)  评论(0编辑  收藏  举报
访问主页
关注我
关注微博
私信我
返回顶部