【Odoo】Owl-概述

序说科技 2022年10月12日 198次浏览

上海序说科技,专注于基于Odoo项目实施,实现企业数智化,助力企业成长。
老韩头的开发日常,博客园分享(2022年前博文)

🦉 Owl 概述 🦉

下面是Owl库提供的内容:

主要的实体:

  • App: 代表Owl应用 (包括一个根组件、模板和配置)
  • Component: 用于定义Owl组件的类
  • mount: 应用的入口:用于将组件挂载到应用
  • xml: 用于定义内联模板

反射

  • useState: 创建一个反射对象(将对象关联到目标组件的钩子)
  • reactive: 创建一个反射对象 (并不关联任何组件)
  • markRaw: mark an object or array so that it is ignored by the reactivity system. 标记一个对象或数据,可避免被反射系统误操作
  • toRaw: 给定一个反射对象,返回原始基础对象 given a reactive objet, return the raw (non reactive) underlying object

生命周期钩子:

  • onWillStart: 在组件被装配前异步执行的钩子
  • onMounted: 在组件被装配时执行时,用于定义代码的钩子
  • onWillPatch: 在组件被patched前,用于定义代码的钩子
  • onWillUpdateProps: 在组件被更新前,用于定义代码的钩子
  • onPatched: 在组件完成patched后,用于定义代码的钩子
  • onWillRender: 在组件被装配前,用于定义代码的钩子
  • onRendered: 在组件被装配前,用于定义代码的钩子
  • onWillUnmount: 在组件被卸载前,钩子中定义的代码将会被执行
  • onWillDestroy: 在组件被销毁前,钩子中定义的代码将会被执行
  • onError: 用于定义Owl异常处理的钩子

其他钩子:

  • useComponent: 返回一个当前组件的引用 (可用于创建衍生钩子)
  • useEffect: define an effect with its dependencies
  • useEnv: 返回当前环境的引用
  • useExternalListener: 添加对组件外DOM对象的监听
  • useRef: 获取标识 (t-ref)的对象
  • useChildSubEnv: 常用于子组件扩展当前环境上下文
  • useSubEnv: 用于当前组件及其子组件扩展环境上下文

实用工具Utility/helpers:

  • EventBus: 简单的消息总线
  • loadFile: 用于从服务器加载文件的工具
  • markup: 定义表示html(非转义)的字符串的实用函数
  • status: 获取组件状态 (new, mounted or destroyed)的函数
  • validate: 验证对象是否满足条件
  • whenReady: 当DOM准备好后执行代码