Observe

Omi Observe

你可以为那些不需要 store 的自定义元素使用 observe 创建响应式视图,比如:

  1. define("my-app", class extends WeElement {
  2. static observe = true
  3. install() {
  4. this.data.name = "omi"
  5. }
  6. onClick = () => {
  7. this.data.name = "Omi V4.0"
  8. }
  9. render(props, data) {
  10. return (
  11. <div onClick={this.onClick}>
  12. <h1>Welcome to {data.name}</h1>
  13. </div>
  14. )
  15. }
  16. })

如果你想要兼容 IE11,请使用 omi-mobx 代替 omi 自带的 obersve,往下看..

Omi Mobx

  1. import { tag, WeElement } from "omi"
  2. import { observe } from "omi-mobx"
  3. @observe
  4. @tag("my-app")
  5. class MyApp extends WeElement {
  6. install() {
  7. this.data.name = "omi"
  8. }
  9. onClick = () => {
  10. this.data.name = "Omi V4.0"
  11. }
  12. render(props, data) {
  13. return (
  14. <div onClick={this.onClick}>
  15. <h1>Welcome to {data.name}</h1>
  16. </div>
  17. )
  18. }
  19. }