Vue: [सुझाव] Vue 2.0 - vm.$appendTo - सिंगलटन घटक

को निर्मित 29 अप्रैल 2016  ·  3टिप्पणियाँ  ·  स्रोत: vuejs/vue

मेरे वर्तमान सिंगलटन पैटर्न के लिए है Vue.extend घटक और कॉल $appendTo(body) पर compile पर पहले require और वापसी vm सभी दूसरों पर .

जब vm.$appendTo हटा दिया जाएगा, तो मुझे सिंगलटन घटकों को बनाने का एक और तरीका चाहिए।
शायद कुछ ऐसा:

replace: false
el: => document.body

Vue-comps में मेरे पास वर्तमान में 3 सिंगलटन घटक हैं:

  • vue-comps-waves - में एक छिपा हुआ सिंगलटन svg स्टोर है जो svg एनिमेशन के साथ सभी waves इंस्टेंस परोसता है
  • vue-toster - एक ही उदाहरण को उन सभी घटकों द्वारा साझा किया जाना चाहिए जो इसका उपयोग करते हैं
  • vue-overlay - पृष्ठभूमि को काला करने के लिए एक एकल ओवरले जो इसका उपयोग करने वाले सभी घटकों के z-index का ट्रैक रखता है
discussion

सबसे उपयोगी टिप्पणी

आपको इसे जोड़ने से पहले $mount() बिना तर्कों के (जो vm.$el बनाता है) कॉल करने की आवश्यकता है, लेकिन अन्यथा हाँ इसे काम करना चाहिए।

सभी 3 टिप्पणियाँ

मैं यहां $appendTo() की आवश्यकता को बिल्कुल नहीं समझता - आप केवल this.$el पर मूल DOM विधियों का उपयोग कर सकते हैं, क्या अंतर है?

शायद मैं बस उलझन में हूँ

संलग्न बहिष्कृत, घटकों के अब ऑफ-डोम होने की संभावना नहीं है

यह काम करेगा?

Comp = Vue.extend(someComp)
vm = new Comp() # vm is off-dom here ?
document.body.appendChild(vm.$el)

अगर ऐसा है तो इसे बंद किया जा सकता है..

आपको इसे जोड़ने से पहले $mount() बिना तर्कों के (जो vm.$el बनाता है) कॉल करने की आवश्यकता है, लेकिन अन्यथा हाँ इसे काम करना चाहिए।

क्या यह पृष्ठ उपयोगी था?
0 / 5 - 0 रेटिंग्स