成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

以更好的方式使用 Vue Mixins

開發(fā) 開發(fā)工具
Mixin是一個有用的工具,但它會使我們的項目特別是在大項目中變得更加復雜、不靈活和不透明。使用這種方法是一種很好的實踐,可以更加明確mixin含義并避免一些由于不明確導致的bug。

Mixin 組件在項目中經(jīng)常被用來重用一些業(yè)務邏輯,但它們有一些不確定的細微差別,這在項目開發(fā)中越來越明顯。我偶爾也會遇到這種情況,它們會給代碼庫的重構或新功能的開發(fā)帶來困難。

在介紹我的方法之前,我想先介紹一下使用mixins的優(yōu)點和缺點。

優(yōu)點

  • 擴展了代碼重用的DRY原則。我們可以在不同的組件中重復使用相同的業(yè)務邏輯。
  • 我們可以把 mixin 作為一個全局性的 mixin,與所有的組件共享上下文。

缺點

  • 使用mixins的組件的邏輯不透明。
  • 可重寫的上下文,我們必須注意不要因為相同的名稱覆蓋一些Mixin的方法,getter或數(shù)據(jù);

缺點并不是避免使用 mixins 的一個關鍵原因,但我們應該了解它們。建議使用基于這些技巧的方式來減少缺點所帶來的影響。

在 method、getter、value和 props 名字開頭使用前綴。它展示了 mixin 相關的功能。使用這個技巧可以讓我們輕松地分離組件 props 和 mixin props。例如:$<mixinName>_<(prop|method|value)>。

export default {
props: {
$impressionsMixin_page: {
type: Number,
required: true
},
$impressionsMixin_listingId: {
type: Number,
required: true
},
$impressionsMixin_itemId: {
type: Number,
required: true
}
},
data() {
return {
$impressionsMixin_observer: null,
$impressionsMixin_timeout: null,
$impressionsMixin_eventObject: null
};
},
methods: {
$impressionsMixin_getObserverOptions() {
// ...
},
$impressionsMixin_setImpressionObserver() {
// ...
},
$impressionsMixin_resetImpressionObserver() {
// ...
},
$impressionsMixin_logImpression() {
// ...
}
}
};

在父組件中這樣使用:

<template>
<div id="app">
<ListingItem
v-for="item in items"
:key="item.id"
:item="item"
textAlign="left"
:$impressionsMixin_page="page"
:$impressionsMixin_itemId="item.id"
:$impressionsMixin_listingId="listingId"
/>
</div>
</template>

我不喜歡在全局mixin中使用前綴。通常,這些方法和值的名稱是明確的,并且它們的功能不會在項目的其他部分重復,所以不需要為它們添加前綴。

export default {
config() {
// ...
},
user() {
// ...
},
isMobile() {
// ...
},
isTablet() {
// ...
},
isDesktop() {
// ...
}
};

該方式的優(yōu)點:

  • Mixins的方法或?qū)傩钥梢苑奖愕乇籌DE自動完成使用。
  • 使用前綴可以避免組件的方法意外覆蓋mixin方法和屬性。
  • 大項目中的開發(fā)者對組件代碼的透明和方便的閱讀。

總結

Mixin是一個有用的工具,但它會使我們的項目特別是在大項目中變得更加復雜、不靈活和不透明。使用這種方法是一種很好的實踐,可以更加明確mixin含義并避免一些由于不明確導致的bug。

作者:knaagar 譯者:前端小智

來源:medium 原文:https://medium.com/@artem.holinka/use-vue-js-mixins-in-a-better-way-11e4ff774763。

責任編輯:姜華 來源: 今日頭條
相關推薦

2017-09-21 08:31:45

閃存陣列方式

2012-07-25 13:23:32

ibmdw

2019-07-25 08:50:39

Windows 10設置性能

2024-05-15 08:20:08

GradleMaven工具

2021-08-30 12:25:12

Python序列化函數(shù)

2023-08-22 13:18:00

Web 開發(fā)CSS

2019-12-12 10:46:15

Kubernetes容器系統(tǒng)

2022-02-07 08:58:54

DCIM數(shù)據(jù)中心

2024-10-29 12:54:27

2022-01-19 22:18:56

Vue.jsVue SPA開發(fā)

2015-08-03 10:41:52

大數(shù)據(jù)

2020-07-29 11:06:16

存儲備份IT

2010-04-13 08:49:08

JavaLombokJavabean

2021-03-26 09:00:00

開發(fā)框架React

2014-04-21 10:14:52

PromisesJavaScript

2021-06-09 10:45:12

JavaScript開發(fā) 編程

2023-10-10 08:00:00

2020-05-08 11:24:21

物聯(lián)網(wǎng)醫(yī)療技術

2014-12-22 16:16:40

Hyper-V

2025-05-06 03:30:00

AIVueVite
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 中文字幕乱码视频32 | 国产99免费 | 看一级毛片视频 | 日本精品一区 | 综合网中文字幕 | 久久久久久国产精品 | 日韩at| 欧美精品黄 | 国产精品成人在线观看 | 亚洲va欧美va天堂v国产综合 | 久久天堂 | 欧美精品片 | 欧美成人a| 成人久久久 | 狠狠干美女 | 黄色毛片视频 | 国产一区 日韩 | 日本一区二区在线视频 | 91影院| 久久久www成人免费无遮挡大片 | 韩国av影院 | 国产又色又爽又黄又免费 | 亚洲欧美日韩久久久 | 五月婷婷丁香 | 久久国内精品 | 亚洲一二三区在线观看 | 国内精品久久久久久 | 成人免费视频在线观看 | 国产成人午夜精品影院游乐网 | www国产成人免费观看视频,深夜成人网 | 国产精品小视频在线观看 | 超碰激情 | 一区二区三区在线看 | 欧美一级片在线观看 | 91五月天| 久久久久国产精品 | 午夜av一区二区 | 97色在线视频 | 亚洲日本乱码在线观看 | 三级黄色网址 | 欧美在线成人影院 |