• 1.12.0 dde82e9860

    v1.12.0 Stable

    yutent released this 2024-06-17 11:40:21 +08:00 | 1 commits to master since this release

    • 增加双向绑定方法live()的支持;
    • 增加语法糖方法when()which();
    • 更新开源协议的声明;
    
    import { live, when, which } from 'wkit'
    
    class {
    
      foo = 'blabla'
      bar = { a: 'blabla'}
      
      show = false
      tab = 'home'
    
      render() {
        return html`
          <p>${this.foo}</p>
          <p>${this.bar.a}</p>
          
          
          <input value=${this.foo} />  <!-- 普通绑定, 输入时不会同步到foo上 -->
          <input value=${live.bind(this, 'foo')} />  <!-- 双向绑定, 输入时会同步到foo上, 并且自动更新视图渲染 -->
          
          <input value=${live.bind(this, 'bar.a')} />  <!-- 支持对象子属性 -->
          
          
          
          
          
          
          <!-- 旧的三元运算符写法 -->
          ${ this.show ? html`xxxx` : '' }
          
          <!-- 使用when()方法, 默认空值可省略 -->
          ${ when(this.show, html`xxxx`) }
          
          
          
          <!-- which()方法, 可简单处理字符串模板不支持switch语法的问题 -->
          ${ 
            which(this.tab, [
              ['home', 'html`xxxx`],
              ['about', html`yyyy`],
              ...
            ]) 
          }
        
        `
      }
      
    }
    
    
    Downloads