Maison >interface Web >js tutoriel >Comment écrire une bibliothèque js/jQuery (résumé de l'expérience)

Comment écrire une bibliothèque js/jQuery (résumé de l'expérience)

PHPz
PHPzoriginal
2017-04-02 15:51:151600parcourir

Le plug-in

Writingjs/jQuery a des routines conventionnelles. Selon ces routines, il n'y aura pas de gros problèmes dans la structure du code. Ce projet appelé javascript-patterns , j'ai beaucoup appris grâce à quelques démos.

Structure de base

Bibliothèque ordinaire

Elle peut être implémentée avec la fonction anonyme la plus basique

(function(){
    var root = this;
    root.YOURLIB = function(){
        FUNC1 : function(){},
        FUNC2 : function(){}
    }
}())

Vous pouvez également utiliser call au lieu de Closure. Dans ce cas, les deux méthodes d'écriture sont équivalentes. Undersocre.js utilise la méthode d'écriture d'appel

(function(){
    var root = this;
    root.YOURLIB = function(){
        FUNC1 : function(){},
        FUNC2 : function(){}
    }
}.call(this))

jQuery. plug-in

La méthode suivante peut faire en sorte que le plug-in traverse CMD/AMD/navigateur

(function (factory) {
    if (typeof define === 'function' && define.amd) {
        // AMD
        define(['jquery'], factory);
    } else if (typeof exports === 'object') {
        // CommonJS
        factory(require('jquery'));
    } else {
        // Browser globals
        factory(jQuery);
    }
}(function ($) {
    $.fn.render = function() {}
    $.render2 = function() {}
}))

Bien sûr, si vous ne considérez pas Seajs et RequireJS, le Le moyen le plus pratique est d'utiliser des fonctions anonymes, puis de passer window.jQuery comme paramètre

Organisation interne

Nous utilisons bootstrap-select v1.6.3,smooth-scroll Analysons ces deux projets,

Initialisation

Généralement, les bibliothèques fourniront un ensemble de fichiers de configuration par défaut, et puis utilisez-les avec des paramètres définis par l'utilisateur. Le genre de

settings = extend(defaults, options ||{})); 写法就相当赞,可以以一种十分简单的方式防止空指针异常。

en extension, défilement fluide. Le reste est la fonction de division de l'entreprise en fonction de l'entreprise. Quant à la façon de diviser, la seule chose. est de pratiquer davantage.

De plus, c'est une bonne habitude de distinguer les interfaces externes des interfaces internes en écrivant privé et public dans les commentaires.

i18n et gestion de la configuration

i18n signifie que tous les caractères internationaux sont mis en valeurs par défaut. La manière la plus élégante est de définir un objet dans les valeurs par défaut, afin que le fichier d'internationalisation soit défini.

peut être séparé du fichier de bibliothèque d'origine. Pour plus de détails, veuillez vous référer à bootstrap-datapicker

LA FIN


.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn