网站不同页面的javascript是怎样组织的呢?
ringa_lee
ringa_lee 2017-04-10 16:15:02
0
4
342

网站有很多页面,不知道这些javascript代码该怎样组织。我一般都是在一个匿名函数中直接执行,感觉不太合理。
比如A页面:

(function()
{
    $('#publish').on('click',function()
    {
        ...
    });
    ...
}());

然后B页面也是

(function()
{
    $('#login').on('click',function()
    {
        ...
    });
    ...
}());

就是像发帖、回帖、注册、登录这些,都是直接操作,然后将这些代码打包到一个文件,感觉不科学,代码多了,感觉有不少重复。同时很多操作,比如登录、注册、发帖、回帖这些,大部分都相同,但是如果是另外做一个网站的话,又需要重新写一篇,无法做到复用。但是我又不知道该怎么组织代码,找不到学习的资源。

ringa_lee
ringa_lee

ringa_lee

全員に返信(4)
刘奇

面向对象、模块管理、amd、cmd,想开箱即用,require.js、sea.js、webpack、browserify找一个看看

いいねを押す +0
Ty80

百度一下js模块化,看看相关的资料,你可以在js中像模块一样相互引用,然后用browserify,webpack这样的工具打包一下,页面去引用这个打包后的文件就好了。

いいねを押す +0
阿神

从分层、复用、分治的角度来看,可以看看angular的解决思想。超有JAVA开发的仪式感。

いいねを押す +0
黄舟

functions.js:
前缀:

function df_foo($arg) {}
function df_bar($arg) {}

匿名(实现块级作用域):

(function(){/*JS*/}());  //楼主是这样
(function(){/*JS*/})();  //也可以这样
(function($){})(jQuery); //比如jQuery插件一般就是这样写
$(function(){/*jQuery*/}); //相当于$(document).ready(function(){/*jQuery*/});

函数名为键,函数体(匿名函数)为值:

var func = {
    foo: function(arg){alert(arg);},
    bar: function(arg){alert(arg);}
};
func.foo('php');  //func['foo']('php');
func.bar('best'); //func['bar']('best');
いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート