คำถามติดแท็ก coffeescript

CoffeeScript เป็นภาษาที่รวบรวมเป็น JavaScript ภายใต้เครื่องหมายวงเล็บและอัฒภาคที่น่าอายทั้งหมดนั้น JavaScript มีรูปแบบวัตถุที่สวยงามอยู่ในหัวใจเสมอ CoffeeScript เป็นความพยายามที่จะเปิดเผยส่วนที่ดีของ JavaScript ด้วยวิธีง่ายๆ

5
Trello เข้าถึงคลิปบอร์ดของผู้ใช้ได้อย่างไร
เมื่อคุณโฮเวอร์เหนือการ์ดในTrelloและกดCtrl+ CURL ของการ์ดนี้จะถูกคัดลอกไปยังคลิปบอร์ด พวกเขาทำเช่นนี้ได้อย่างไร เท่าที่ฉันสามารถบอกได้ว่าไม่มีภาพยนตร์ Flash เกี่ยวข้อง ฉันติดตั้งFlashblockแล้วและแท็บเครือข่าย Firefox ไม่แสดงภาพยนตร์ Flash ที่โหลด (นั่นเป็นวิธีปกติเช่นโดย ZeroClipboard) พวกเขาบรรลุความมหัศจรรย์นี้ได้อย่างไร? (ในขณะนี้ฉันคิดว่าฉันมี epiphany: คุณไม่สามารถเลือกข้อความบนหน้าดังนั้นฉันคิดว่าพวกเขามีองค์ประกอบที่มองไม่เห็นที่พวกเขาสร้างการเลือกข้อความผ่านรหัส JavaScript และCtrl+ Cเรียกพฤติกรรมเริ่มต้นของเบราว์เซอร์คัดลอกที่มองไม่เห็น ค่าข้อความของโหนด)

30
ทำไมไม่เพิ่มส่วนหัว CORS ในเส้นทางตัวเลือกอนุญาตให้เบราว์เซอร์เข้าถึง API ของฉัน
ฉันพยายามสนับสนุน CORS ในแอปพลิเคชัน Node.js ของฉันซึ่งใช้เว็บเฟรมเวิร์ก Express.js ฉันได้อ่านการอภิปรายกลุ่มของ Googleเกี่ยวกับวิธีจัดการเรื่องนี้และอ่านบทความสองสามข้อเกี่ยวกับวิธีการทำงานของ CORS ก่อนอื่นฉันทำสิ่งนี้ (รหัสถูกเขียนด้วยไวยากรณ์ CoffeeScript): app.options "*", (req, res) -> res.header 'Access-Control-Allow-Origin', '*' res.header 'Access-Control-Allow-Credentials', true # try: 'POST, GET, PUT, DELETE, OPTIONS' res.header 'Access-Control-Allow-Methods', 'GET, OPTIONS' # try: 'X-Requested-With, X-HTTP-Method-Override, Content-Type, Accept' res.header 'Access-Control-Allow-Headers', 'Content-Type' # ... ดูเหมือนจะไม่ทำงาน ดูเหมือนว่าเบราว์เซอร์ของฉัน (Chrome) ไม่ได้ส่งคำขอตัวเลือกเริ่มต้น เมื่อฉันเพิ่งอัปเดตบล็อกสำหรับทรัพยากรฉันต้องส่งคำขอ …

22
วิธีการใช้ executables จากแพ็คเกจที่ติดตั้งไว้ใน node_modules
ฉันจะใช้โมดูลในระบบnode.jsได้อย่างไร ตัวอย่างเช่นในแอพของฉันฉันติดตั้ง coffee-script: npm install coffee-script นี้จะติดตั้งไว้ในคำสั่งและกาแฟอยู่ใน./node_modules ./node_modules/.bin/coffeeมีวิธีเรียกใช้คำสั่งนี้เมื่อฉันอยู่ในโฟลเดอร์หลักของโครงการหรือไม่ ฉันเดาว่าฉันกำลังมองหาสิ่งที่คล้ายกับbundle execในชุดรวม โดยทั่วไปฉันต้องการระบุเวอร์ชันของสคริปต์กาแฟที่ทุกคนที่เกี่ยวข้องกับโครงการควรใช้ ฉันรู้ว่าฉันสามารถเพิ่มการ-gตั้งค่าสถานะเพื่อติดตั้งทั่วโลกเพื่อให้กาแฟทำงานได้ดีทุกที่ แต่ถ้าฉันต้องการมีกาแฟหลายรุ่นต่อโครงการ

13
วิธีการเรียกใช้งาน Gulp ตามลำดับหนึ่ง ๆ
ในตัวอย่างเช่นนี้: gulp.task "coffee", -> gulp.src("src/server/**/*.coffee") .pipe(coffee {bare: true}).on("error",gutil.log) .pipe(gulp.dest "bin") gulp.task "clean",-> gulp.src("bin", {read:false}) .pipe clean force:true gulp.task 'develop',['clean','coffee'], -> console.log "run something else" ในdevelopภารกิจที่ฉันต้องการเรียกใช้cleanและหลังจากเสร็จแล้วให้เรียกใช้coffeeและเมื่อเสร็จแล้วให้เรียกใช้อย่างอื่น แต่ฉันไม่สามารถเข้าใจได้ ชิ้นนี้ไม่ทำงาน กรุณาแนะนำ

7
การดำเนินการที่สามใน CoffeeScript
ฉันจำเป็นต้องตั้งค่าให้เป็นไปaตามเงื่อนไข วิธีที่สั้นที่สุดในการทำเช่นนี้กับ CoffeeScript คืออะไร เช่นนี้เป็นวิธีที่ฉันจะทำใน JavaScript: a = true ? 5 : 10 # => a = 5 a = false ? 5 : 10 # => a = 10

8
ฉันจะกำหนดตัวแปรทั่วโลกใน CoffeeScript ได้อย่างไร
บน Coffeescript.org: bawbag = (x, y) -> z = (x * y) bawbag(5, 10) จะรวบรวมเพื่อ: var bawbag; bawbag = function(x, y) { var z; return (z = (x * y)); }; bawbag(5, 10); รวบรวมผ่าน coffee-script ภายใต้ node.js ล้อมรอบด้วย: (function() { var bawbag; bawbag = function(x, y) { var z; return …


4
จะวนซ้ำคีย์และค่าในวัตถุใน CoffeeScript ได้อย่างไร
ฉันมีวัตถุ ("เชื่อมโยงอาร์เรย์" เพื่อที่จะพูด - ที่รู้จักกันว่าวัตถุ JavaScript ธรรมดา): obj = {} obj["Foo"] = "Bar" obj["bar"] = "Foo" ฉันต้องการวนซ้ำobjโดยใช้ CoffeeScript ดังนี้ # CS for elem in obj bu รหัส CS ข้างต้นรวบรวมเพื่อ JS: // JS for (i = 0, len = obj.length; i < len; i++) ซึ่งไม่เหมาะสมในกรณีนี้ วิธี JavaScript จะเป็นfor(var key in obj)แต่ตอนนี้ฉันสงสัยว่า: …


9
Exec: แสดง stdout“ สด”
ฉันมีสคริปต์ง่ายๆนี้: var exec = require('child_process').exec; exec('coffee -cw my_file.coffee', function(error, stdout, stderr) { console.log(stdout); }); ที่ฉันเพียงแค่รันคำสั่งเพื่อรวบรวมไฟล์สคริปต์กาแฟ แต่ stdout ไม่เคยถูกแสดงในคอนโซลเนื่องจากคำสั่งไม่สิ้นสุด (เนื่องจากตัวเลือก -w ของกาแฟ) หากฉันรันคำสั่งโดยตรงจากคอนโซลฉันได้รับข้อความเช่นนี้: 18:05:59 - compiled my_file.coffee คำถามของฉันคือ: เป็นไปได้หรือไม่ที่จะแสดงข้อความเหล่านี้พร้อมกับ node.js exec? ถ้าใช่เป็นอย่างไร ! ขอบคุณ

11
การเข้าถึงคุณสมบัติที่ไม่ปลอดภัย (และการกำหนดเงื่อนไข) ใน ES6 / 2015
มีตัวnullดำเนินการ -safe property (การขยายพันธุ์ / การดำรงอยู่ของ null) ใน ES6 (ES2015 / JavaScript.next / Harmony) เช่น?.ในCoffeeScriptหรือไม่? หรือจะมีการวางแผนสำหรับ ES7 var aThing = getSomething() ... aThing = possiblyNull?.thing สิ่งนี้จะประมาณ: if (possiblyNull != null) aThing = possiblyNull.thing เป็นการดีที่โซลูชันไม่ควรกำหนด (แม้undefined) ให้กับaThingถ้าpossiblyNullเป็นnull

3
ฉันจะแสดงความคิดเห็นใน CoffeeScript ได้อย่างไร “ / * สิ่งนี้ * /” ไม่ทำงาน
คุณสามารถแสดงความคิดเห็นใน CoffeeScript ด้วยวิธีใด? เอกสารประกอบบอกว่าคุณสามารถใช้สัญลักษณ์แฮชสามอันเพื่อเริ่มและปิดบล็อกความคิดเห็น: ### Comments go here ### ฉันพบว่าบางครั้งฉันสามารถใช้สองรูปแบบต่อไปนี้ `// backticks allow for straight-JavaScript, // but the closing backtick can't be on a comment line (I think?) ` มีวิธีที่ง่ายกว่าในการแทรกความคิดเห็นสั้น ๆ ใน CoffeeScript หรือไม่ อย่าใช้รูปแบบนี้ ** ตั้งแต่นี้ได้รับมุมมองมากมายฉันต้องการเน้นที่ /* Comment goes here */ สร้างข้อผิดพลาด MATH เมื่อ/*อยู่ในบรรทัดของตัวเอง ขณะที่เทรเวอร์ชี้ให้เห็นในความคิดเห็นในคำถามนี้เป็นแสดงออกปกติ , ไม่แสดงความคิดเห็น!

4
CoffeeScript เมื่อใดควรใช้ลูกศรอ้วน (=>) เหนือลูกศร (->) และในทางกลับกัน
เมื่อสร้างคลาสใน CoffeeScript ควรกำหนดวิธีการอินสแตนซ์ทั้งหมดโดยใช้ตัวดำเนินการ=>("fat arrow") และวิธีการแบบคงที่ทั้งหมดที่กำหนดโดยใช้ตัว->ดำเนินการหรือไม่


13
CoffeeScript บน Windows?
ฉันจะลอง CoffeeScript บน Windows ได้อย่างไร คำแนะนำในการติดตั้งมีไว้สำหรับ * nix เท่านั้น: http://jashkenas.github.com/coffee-script/#installation แก้ไข: เมื่อฉันถามเรื่องนี้มาสักพักก็มีคำตอบใหม่ ๆ ปรากฏขึ้นมากมาย จำนวน (และคุณภาพ) ของตัวเลือกสำหรับผู้ใช้ Windows เพิ่มขึ้นมาก ฉัน "ยอมรับ" คำตอบเมื่อนานมาแล้วจากนั้นก็เปลี่ยนเป็นคำตอบอื่น ๆ (ที่ดีกว่า) ตามที่ปรากฏขึ้น แต่ตอนนี้ฉันได้ตัดสินใจที่จะไม่รับคำตอบใด ๆ และให้ชุมชน (โหวต) แสดงว่าคำตอบใดดีที่สุด ขอบคุณทุกคนสำหรับข้อมูล

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.