目錄
{ title || "" }
首頁 web前端 js教程 riot.js學習【二】mixin

riot.js學習【二】mixin

Jan 16, 2017 pm 04:01 PM

Mixin 介紹

riot.js中,有個很重要的概念,就是mixin,顧名思義,大約的作用就是「混合」。

把物件的屬性、方法,混合進目前的context上下文哈,俗點的理解,就是this物件中。

看個「栗子」:

[code]<!Doctype html>
<html>
<head>
    <meta charset="utf-8" />
    <title>Riot.js测试02, Mixin</title>
    <script type="text/javascript" src="riot.js"></script>
    <script type="text/javascript" src="compiler.js"></script>
</head>
<body>
    <todo title="da宗熊"></todo>
</body>
<script type="riot/tag">
    <todo>
        <h1 id="nbsp-title-nbsp-nbsp-nbsp">{ title || "" }</h1>
        <p>年龄: { this.getAge() } </p>
        <p>身高:{ height }cm</p>

        // 这里可以省略script标签
        this.title = opts.title || "";
        // 调用mixin,mixin拿到的,是window.mixinObj
        // 也可以混合多个 this.mixin(a, b...);
        this.mixin(mixinObj);
    </todo>
</script>
<script type="text/javascript">
    var mixinObj = {
        age: 10,
        height: 180,
        getAge: function(){
            return this.age;
        }
    };
    riot.mount("todo");
</script>
</html>
登入後複製

運作效果如下:

看個「栗子」:

[code]// 如果要跨项目共享 mixin,可以考虑在riot里注册一个,而不是使用window级对象
riot.mixin("defaultData", {
    author: "da宗熊",
    email: "1071093121@qq.com"
});
登入後複製
riot.js學習【二】mixin運作效果如下:

看個「栗子」:

[code]this.mixin("defaultData"); // 现在this拥有了author和email属性了
登入後複製

運作效果如下:

You see,透過 this.mixin(mixinObj); window.mixinObj的屬性和方法,都體現在了this上。

注意: mixin只是將物件淺複製,所以多個自訂標籤共用透過mixin物件時,小心地互相影響

聲明式的mixin

mixin的參數,不只是對象,還能​​是字串。但使用字串時,必須事先在riot中,註冊一個mixin。

註冊方式:rrreee

在自訂標籤中使用:

rrreee



遇到的小坑

注意mixin的數序,後面的屬性,會覆寫前面的屬性遇到的小坑注意mixin的數序,後面的屬性,甚至會覆蓋前面的屬性

in會覆寫this的屬性

不要覆蓋掉riot.js自帶的屬性和方法,例如: opts, update, on, off, trigger等

以上就是riot.js內容,更多相關內容請關注PHP中文網(www.php.cn)!

🎜🎜🎜🎜🎜🎜🎜
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

Vue 中使用 mixin 實作 CRUD(增刪改查)操作的技巧 Vue 中使用 mixin 實作 CRUD(增刪改查)操作的技巧 Jun 25, 2023 pm 07:42 PM

Vue中的mixin是一個非常有用的特性,它可以將一些可重複使用的程式碼封裝在一個mixin物件中,然後在需要使用這些程式碼的元件中使用mixin進行引入。這種方法大大提高了程式碼的可重複使用性和可維護性,特別是在一些重複的CRUD(增刪改查)操作中。本文將介紹如何使用mixin在Vue中實作CRUD操作的技巧。首先,我們需要了解如何創建一個

Vue 中使用 mixin、extend、component 等 API 實作元件客製化的技巧 Vue 中使用 mixin、extend、component 等 API 實作元件客製化的技巧 Jun 25, 2023 pm 03:28 PM

Vue.js是一個流行的前端框架,它提供了許多API用於組件的客製化。本文將介紹Vue中mixin、extend、component等API,幫助您掌握元件客製化的技巧。 mixinmixin是Vue中重複使用元件程式碼的一種方式。它允許我們將已經編寫的程式碼重複使用到不同的元件中,從而減少重複程式碼的編寫。例如,我們可以使用mixin來幫助我們在多個群組

Vue中如何使用mixin實作元件程式碼重複使用 Vue中如何使用mixin實作元件程式碼重複使用 Jun 11, 2023 pm 12:30 PM

Vue中如何使用mixin實作元件程式碼重複使用隨著應用程式越來越複雜,我們需要更多的元件化和程式碼重複使用來提高開發效率。在Vue中,mixin是一個非常簡單又非常有用的工具,它可以幫助我們實作元件程式碼的重複使用。 mixin是一個類似於混合的概念,它允許在多個元件之間共享相同的程式碼。在Vue中,我們可以將mixin視為一個對象,它包含一些可重複使用的屬性和方法,可以被多個

Vue中使用mixin來提高應用程式的程式碼復用性和效能 Vue中使用mixin來提高應用程式的程式碼復用性和效能 Jul 18, 2023 am 11:13 AM

Vue中使用mixin來提高應用程式的程式碼復用性和效能導語:隨著前端應用的複雜性不斷提高,程式碼的複用性和效能最佳化成為了開發者關注的重點。 Vue作為一個流行的JavaScript框架,提供了使用mixin的功能來幫助我們簡化程式碼並提高效能。本文將介紹什麼是mixin以及如何在Vue中使用mixin來提高應用程式的程式碼多用性和效能。一、什麼是mixin? Mixin在程式設計中

Vue 中使用 mixin 實作清單、表格、表單等元件的重複使用的技巧 Vue 中使用 mixin 實作清單、表格、表單等元件的重複使用的技巧 Jun 25, 2023 am 08:36 AM

Vue是一個流行的JavaScript框架,有許多強大的功能和工具可以用來建立現代化、高效率的網路應用程式。其中之一就是mixin。 mixin是Vue中的一種高級機制,它允許我們將元件中可重複使用的功能部分抽離出來,以便能夠有效地複用這些功能,這在我們開發列表、表格、表單等通用的元件時非常有用。 Mxin的工作原理mixin可以理解為物件的

vue中mixin和元件的差別是什麼 vue中mixin和元件的差別是什麼 Dec 13, 2022 pm 06:34 PM

mixin和元件的區別:元件在引用後相當於在父元件內開闢了一塊單獨的空間,來根據父元件props過來的值進行對應的操作,單本質上兩者還是涇渭分明,相對獨立;而mixins在引入元件之後相當於父元件的各種屬性方法都被擴充了,會將元件內部的內容如data等方法、method等屬性與父元件對應內容合併。

Vue 中的 mixin 使用與應用場景 Vue 中的 mixin 使用與應用場景 Jun 11, 2023 pm 12:32 PM

隨著前端技術的不斷發展,Vue已經成為了許多前端開發者的首選框架之一。在Vue中,mixin是一項十分重要且實用的功能。透過使用mixin,我們可以將一些常用的邏輯程式碼提取出來,封裝成一個對象,然後在元件中重複使用,從而大幅提高程式碼的複用性和可維護性。一、mixin的使用在Vue中,我們可以透過定義一個物件來建立一個mixin,這個物件中可以

Vue元件通訊:使用mixin進行公用方法共用 Vue元件通訊:使用mixin進行公用方法共用 Jul 08, 2023 pm 05:55 PM

Vue元件通訊:使用mixin進行公共方法共用在Vue開發中,經常會遇到需要多個元件之間進行通訊的情況。為了降低程式碼的耦合性和提高程式碼的可重複使用性,我們可以使用Vue的mixin功能來共享公共方法。什麼是mixinmixin是一種可重複使用的Vue元件選項。它可以包含任意元件選項,例如data、methods、computed、watch等。當一個元件使用mixi

See all articles