WebStorm'un otomatik tamamlamasını WebGLRenderingContext hakkında bilgilendirme


9

WebGL içeren bir proje üzerinde çalışıyorum ve geliştirme yapmak için WebStorm kullanıyorum.

Geliştirme akışıyla ilgili bir sorun, WebStorm'un WebGL ile ilgili şeyleri otomatik olarak tamamlayamamasıdır. Özellikle, bir değeri tür olarak eklersemWebGLRenderingContext

/** @type {!WebGLRenderingContext} */
var gl;

WebStorm, WebGLRenderingContext öğesinin çözümlenmemiş bir değişken olduğundan şikayet ediyor. Ayrıca gl, bu yöntemlerin bulunamayacağından şikayet ediyor ve bu yöntemleri bulamayacakları konusunda uyarıyor.

Geçerli geçici çözümüm (yalnızca uyarıları kapatmanın yanı sıra) şöyle bir kayıt türü belirtmektir:

 * @type {{
 *   texParameteri: function,
 *   TEXTURE_WRAP_T: *,
 *   ...
 * }}
 var gl;

Ama açıkçası, bir oluşturma bağlamı kullanmak istediğim her seferinde bunun gibi düzinelerce standart üyeyi kişisel olarak listelemek biraz saçma. Daha kolay bir yol var mı?


Neden aptalca? WebStorm'un açıklama eklediğini fark ettiği şeyler aynı şekilde değil mi? IDE ile birlikte gelen açıklamaların yanına kendi ek açıklamalarınızı eklemeniz gerekir.
Hey

@Hey Bu durumda aptalca çünkü verimsiz ve gereksiz yapıyorum. Bu bilgi zaten bir yerde ve çok daha ayrıntılı olarak (örneğin imza veya parametre başına doküman eklemediğime dikkat edin). Birisi listeyi zaten yaptı, bu yüzden listeyi yapmak benim için aptalca.
Craig Gidney

Yani gerçekten başka birinin yazdığı ek açıklamaları nerede bulacağınızı mı soruyorsunuz?
Hey

@Hey Bu kabul edilebilir. Bazı kütüphaneler için bu şekilde çalışır (ek açıklamalar kaynakta bulunur). Webgl'in tarayıcılara yerleşik olması, dokümanların yaşamak için doğal bir harici yere sahip olmaması nedeniyle biraz farklı bir durum haline getiriyor.
Craig Gidney

Muhtemelen yaşayacakları bir yerleri var (WebStorm yerleşik öğelerin geri kalanıyla ilgili ek açıklamaları her yerde saklıyorsa). Gerçekten yararlı olabilecek şey, IDL'yi JS ek açıklamalarına dönüştürmek için bir şeydir. Böyle bir şey olup olmadığını bilmiyorum.
Hey

Yanıtlar:


10

WebStorm'a WebGL API'sı hakkında bilgi vermeniz gerekir. WebGL kütüphanesini Ayarlar | Diller ve Çerçeveler | JavaScript | Kütüphaneler.

Dosyayı oluşturur / değiştirir .idea/jsLibraryMappings.xml

<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
  <component name="JavaScriptLibraryMappings">
    <includedPredefinedLibrary name="WebGL" />
  </component>
</project>

Bkz. Http://blog.jetbrains.com/webstorm/2014/07/how-webstorm-works-completion-for-javascript-libraries/

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.