Ruby中的Mixin (混入)

2021-06-18 09:59:38 字數 830 閱讀 7172

**:

在ruby中,我們可以把乙個模組混入(mixin)到物件中,從而達到類似多重繼承的效果。

下面舉幾個例子來仔細闡述一下這個問題:

首先定義乙個module:

module foo

def bar

puts "foo";

endend

然後我們把這個模組混入到物件中去:

class demo

include foo

end如上編碼後,模組中的例項方法就會被混入到物件中:

d=demo.new

d.bar

會輸出foo字樣。

下面我們重新定義一下demo類:

class demo

extend foo

end這個時候如果你得到的就是靜態呼叫:

demo.bar

會輸出foo字樣。

下面我們再來重新定義一下demo類:

class demo

def bar

puts "demo"

endend

然後使用extend方法呼叫:

d=demo.new

d.extend(foo)

d.bar

會輸出foo字樣。

下面我們再來重新定義一下demo類:

class demo

include foo

def bar

puts "demo"

endend

然後使用extend方法呼叫:

d=demo.new

d.extend(foo)

d.bar

會輸出demo字樣。

關於mixin混入

這篇文章講的可以 公共元件最主要的作用還是復用相同的vue元件 有檢視,有方法,有狀態 mixins 如果只是提取公用的資料或者通用的方法,並且這些資料或者方法,不需要元件間進行維護,就可以使用mixins。類似於js中封裝的一些公用的方法,比如utils.js那種 vuex公共狀態管理,在乙個元件...

mix in 混入技術

vue的 高階用法 為了減少元件之間 的重複問題 官方給的例子 自我理解 在common資料夾中新建乙個mixin.js的檔案,在這個檔案裡我們建立乙個mixin物件,在這裡我們可以存放其他元件共用的一些內容 可以存放 data,methods,created,mounted,甚至是componen...

vue中mixin 混入 的學習

混入 mixin 提供了一種非常靈活的方式,來分發 vue 元件中的可復用功能。乙個混入物件可以包含任意元件選項。當元件使用混入物件時,所有混入物件的選項將被 混合 進入該元件本身的選項。index.vue index mixin.js export default created methods ...