uni-app x 使用 UTS 语言使用 mixins

1. uni-app x 使用 UTS 语言使用 mixins

  在 uni-app x 中,使用 UTS 语言可以通过 defineMixin 函数或字面量对象的方式来定义和使用 mixins,与 JavaScript 中的使用方式类似,但需要注意 UTS 是强类型语言。

1.1. 基本用法

  mixins 选项接受一个 mixin 对象数组,支持两种定义方式:

1.1.1. 方式一:使用 defineMixin 函数(推荐)

javascript 复制代码
const mixin1 = defineMixin({
  onLoad() {
    console.log('mixin1 onLoad')
  },
  data() {
    return {
      mixinProp: '来自 mixin 的数据'
    }
  }
})
export default {
  mixins: [mixin1],
  onLoad() {
    console.log('页面 onLoad')
  }
}

1.1.2. 使用字面量对象

javascript 复制代码
export default {
  mixins: [
    {
      data() {
        return {
          mixin2: 'mixin2'
        }
      },
      methods: {
        mixinMethod() {
          console.log('mixin 方法')
        }
      }
    }
  ]
}

1.2. 选项合并规则

  (1)同名属性 :会被覆盖,优先级从低到高为: app.mixin 内嵌 < app.mixin 声明 < page.mixin 内嵌 < page.mixin 声明 < component.mixin 内嵌 < component.mixin 声明。

  (2)同名生命周期:会依次执行,执行顺序与上述优先级一致,先执行低优先级的 mixin,最后执行组件自身的生命周期。

1.3. 重要限制

  在 app-android 平台有以下限制:

  (1)App.uvue 不支持 mixins,全局 mixins 也不会对 App.uvue 生效

  (2)不支持运行时根据条件动态构造 mixins

  详细文档请参考:mixins - uni-app x 选项式 API

相关推荐
Funlang1 小时前
给机器写的 JavaScript 造个笼子
开发语言·javascript·ecmascript
普通人61 小时前
PHP文件读写完全指南
开发语言·php·1024程序员节
古茗前端团队1 小时前
由 key 引发的思考
前端·javascript·react.js
kyriewen2 小时前
我扫了 422 个仓库,近一半 CI 在裸装依赖
前端·javascript·程序员
坤坤子吖2 小时前
Linux网络编程:TCP服务器的多进程与多线程实现
linux·服务器·开发语言·网络·c++·笔记·学习
一晌小贪欢2 小时前
Python基础:第 09 篇 · while 循环:重复直到不满足
开发语言·c++·python·数据可视化·面向对象·python办公
xiaoye-duck3 小时前
《C++ 项目:手写大模型接入 SDK》LLMManager架构设计与实现
开发语言·网络·c++·语言模型
一条大祥脚3 小时前
CuTe 与 CuTe DSL:从 C++ 模板元编程到 Python DSL 的 GPU 编程演进
开发语言·c++·python·cutlass·cute·cute dsl
FRing034 小时前
vue2干货总结8(路由模块封装、router-link、声明式导航、路由重定向、编程式导航)
开发语言·前端·vue.js·vue2
旖旎夜光4 小时前
【C++ 基础入门】C++ 多态(上):虚函数、重写、override/final 与抽象类
开发语言·c++·笔记·学习