2011-09-20 5 views
8
Server = require('mongodb').Server 

यह मेरा CoffeeScript है। उन () को छोड़ने का कोई तरीका?बिना किसी ब्रांड्स के कॉफीस्क्रिप्ट में डॉट प्रॉपर्टी लिखने का कोई तरीका?

+0

ट्रेवर काम destructuring साथ समाधान है, लेकिन आप भी इस संबंधित [CoffeeScript मुद्दों पर प्रस्ताव] की जाँच करनी चाहिए (https://github.com/jashkenas/coffee-script/issues/1407)। – JussiR

उत्तर

8

यह destructuring assignment के लिए एक नौकरी की तरह लग रहा है!

{Server} = require 'mongodb' 
+0

दुर्भाग्यवश यह लिंक काम नहीं करता है। इसके बाद आप सर्वर का संदर्भ कैसे लेंगे? संपादित करें: इससे यह स्पष्ट हो गया: http://blog.carbonfive.com/2011/09/28/destructuring-assignment-in-coffeescript/ –

5
Server = (require 'mongodb').Server 

वास्तव में केवल दो सफेद अभिव्यक्तियों का उपयोग करके इन दो अभिव्यक्तियों को स्पष्ट करने का कोई तरीका नहीं है। मैंने कोशिश की:

Server = require 'mongodb' 
    .Server 

लेकिन जिसके परिणामस्वरूप जावास्क्रिप्ट था:

var server = require('Server'.Server); 

कौन सा स्पष्ट रूप से गलत है और आप क्या चाहते है।

सही उत्तर यहां 'नहीं' है।

अभिभावक महत्वपूर्ण हैं; वे आपको अभिव्यक्ति को अलग करने और निर्धारित करने की अनुमति देते हैं। कॉफ़ीस्क्रिप्ट की सभी अद्भुत अलगावों को स्वयं को संभालने के लिए अद्भुत शक्ति के लिए, प्रत्येक अभिव्यक्ति को स्वचालित रूप से पार्स नहीं किया जा सकता है। मूलभूत गले लगाओ!

+2

दूसरे मामले को सक्षम करने के लिए एक खुली टिकट है। यदि आप रुचि रखते हैं तो https://github.com/jashkenas/coffee-script/issues/1407 के लिए वोट दें। – matyr

4
mongo = require 'mongodb' 
Server = mongo.Server 

:)

+0

'{सर्वर} = mongo' – vaughan

संबंधित मुद्दे