Skip to content

Releases: pardnchiu/QuickUI

v0.6.9-v0.6.13

22 Feb 20:10
Compare
Choose a tag to compare
v0.6.9-v0.6.13 Pre-release
Pre-release

修正

  • :if 渲染邏輯修正
  • 模板渲染邏輯修正
    • index.html
    <body id="app"></body>
    <script>
        document.addEventListener("DOMContentLoaded", async _ => {
            const test = await new QUI({
                data: {
                    hint: "hint 123",
                    title: "test 123"
                },
                render: () => `
                    "{{ hint }}",
                    h1 {
                        style: "background: red;", 
                        children: [ 
                            "{{ title }}"
                        ]
                    }`
            }).fragment();
            document.getElementById("app").appendChild(test);
        });
    </script>
    • result
    <body id="app">
        hint 123
        <h1 style="background: red;">test 123</h1>
    </body>

新增

  • once 不會偵測資料變動重新渲染
  • 模板渲染增加簡寫與 innerHTML 支持
    // 完整語法
    div.chat-sent {
        children: [
            p {
                children: [
                    "123<br>123"
                ]
            }
        ]
    }
    
    // 簡寫語法
    div.chat-sent [
        p [
            "123<br>123"
        ]
    ]
    

v0.6.7-v0.6.8

15 Feb 14:42
Compare
Choose a tag to compare
v0.6.7-v0.6.8 Pre-release
Pre-release

修正

  • :lazyload 添加跨域處理
  • 差異算法確保元素屬性可以被正確移除

v0.6.3-v0.6.6

27 Jan 08:01
Compare
Choose a tag to compare
v0.6.3-v0.6.6 Pre-release
Pre-release

Adjustments

  • Template rendering supports omitting id declaration.
  • Optimized Lazyload speed.
  • Improved code structure.

Deprecated Features

  • For more details, see here.

v0.6.2

16 Dec 13:29
Compare
Choose a tag to compare
v0.6.2 Pre-release
Pre-release

Fixes

  • :attribute can now be correctly translated using i18n.

v0.6.0-v0.6.1

03 Dec 16:44
Compare
Choose a tag to compare
v0.6.0-v0.6.1 Pre-release
Pre-release

Major Changes

  • Project name changed: The project name has been simplified to QuickUI, making it more concise and easier to remember.

Fixes

  • Fixed the behavior of :if when there is no :else and the value does not match. It now properly removes the corresponding element.

New Features

  • :lazyload
    The default effect has been changed to a gradient background animation. You can switch to a loading circle animation using :effect=circle.
  • Added i18n multilingual support:
    Supports setting multilingual content directly through an object format or dynamically loading language files, with support for dynamic language switching.
    <body id="app">
        <h1>{{ i18n.greeting }}, {{ i18n.username }}: {{ username }}</h1>
        <button @click="change" data-lang="zh">切換至中文</button>
        <button @click="change" data-lang="zn">Switch to English</button>
    </body>
    <script>
    const app = new QUI({
        id: "app",
        data: {
            username: "Pardn"
        },
        i18n: {
            zh: {
                greeting: "你好",
                username: "用戶名"
            },
            en: 
            {
                greeting: "Hello",
                username: "Username"
            }
        },
        i18nLang: "zh | en", // Choose language
        event: {
            change: e => {
                const _this = e.target;
                const lang = _this.dataset.lang;
                app.lang(lang);
            },
        }
    });
    </script>

Adjustments

  • Event binding simplified:
    :for in :@click can now be simplified to @click, further improving code clarity and readability.

Deprecated Features

  • For more details, see here.

v0.5.4

10 Nov 11:42
Compare
Choose a tag to compare
v0.5.4 Pre-release
Pre-release

Fixes

  • Fixed the rendering logic of :[attr] attributes, ensuring that attributes are correctly set and applied when used.

Deprecated Features

  • For more details, see here.

v0.5.3

10 Nov 07:54
Compare
Choose a tag to compare
v0.5.3 Pre-release
Pre-release

Fixes

  • The :html attribute now correctly inserts content.

Adjustments

  • Unified lifecycle property naming to camelCase:
    • before_render changed to beforeRender
    • before_update changed to beforeUpdate
    • before_destory changed to beforeDestory
  • To ensure code style consistency and reduce code size, starting from version 1.*.*, only camelCase properties are supported. Snake_case naming is no longer supported.

Deprecated Features

  • For more details, see here.

v0.5.2

09 Nov 19:02
Compare
Choose a tag to compare
v0.5.2 Pre-release
Pre-release

Adjustments

  • Optimized vDOM rendering logic to improve rendering efficiency.
  • Added support for full CSS properties, such as :background-color, for quick styling.
  • Transition animation property changed from :animation to :effect:
    • Starting from version 1.0.0, :animation will be dedicated to CSS animation properties.

Deprecated Features

  • For more details, see here.

v0.5.1

08 Nov 17:04
Compare
Choose a tag to compare
v0.5.1 Pre-release
Pre-release

Fixes

  • Improved :path attribute handling: now parses :for and :if for child elements inserted via :path, resolving issues where child elements were not processed.
  • Enhanced :for attribute handling: added logic for handling string types and virtual DOMs without child elements, ensuring correct processing of all child element types.
  • Refined :if attribute handling: improved condition structure checks to accurately handle relationships between :if, :else-if, and :else, fixing potential rendering errors.

Deprecated Features

  • For more details, see here.

v0.5.0

06 Nov 06:02
Compare
Choose a tag to compare
v0.5.0 Pre-release
Pre-release

New Features

  • Added the :animation attribute, supporting transition effects like fade-in and expand.
  • Added the :mask attribute to enable or disable block loading animations, with values true|false|1|0.
  • Image lazy loading now includes loading animations and transition effects to enhance user experience.

Deprecated Features

  • For more details, see here.