簡體   English   中英

用jquery等大型項目中的JavaScript亂碼?

[英]JavaScript messy code in large projects with jquery etc?

在那里調用javascript專家。 基本上我的問題是關於如何構建代碼,無論是在視覺上還是在功能上,例如,您是否使用此結構將所有內容包裝在對象中:

var myapp={
  binds:function(){
    //put some event listeners for jquery etc...
  },
  otherfunc:function(){
   //do some other thing
  },
  init:function(){
   //call myapp.binds and other functions and other stuff to intialize your app.
  }
};

然后最后

$(document).ready(myapp.init);

事情是這樣的結構我認為JSLint抱怨不是嗎? 使用這樣的結構有什么優點或缺點,或者是否有更好的方法來構建代碼? 您是否遵循$(document).ready(call)的某種模式,將所有事件監聽器和“初始化”應用程序放在一起,是否對方法和變量使用單獨的對象?

我也認為“視覺上”如果你有一個非常大的webapp這個結構最終看起來非常混亂,但也許只是我,我不知道,任何輸入都表示贊賞謝謝。

Using Inheritance Patterns to Organize Large jQuery Applications

亞歷克斯詳細解釋和更好的實踐

http://alexsexton.com/?p=51

它非常好解釋,必須看到

其他鏈接

只要您遵循老師認為您編程的基本規則,構建代碼的方式並不重要:

  1. 不要寫重復的代碼
  2. 一個函數必須做1而且只有1件事
  3. 記錄您的代碼
  4. 其他一些小東西,但主要是上面的......哦,並應用了很多常識

你從中獲得的唯一錯誤是“隱含的全球性”。 您可以通過使用this.document來取消文檔警告(因為窗口是上下文)。 除非你粘貼jQuery源代碼(然后gl中包含所有錯誤),否則$隱含的全局將保留。

我相信JSLint - 很多。 在大型項目中,我傾向於像上面那樣創建對象文字,但我使用模塊模式來實現對象安全性:

var myapp = (function () {
    var secret_stuff, public_stuff;
    return {
        stuff: public_stuff
    }
}());

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM