require.js模块化开发

1.html
 <script data-main="./js/pages/index.js" src="./js/lib/require.js"></script>
2. page/index.js
require.config({
    paths: {
    //注意:路径不加后缀.js
        jquery: '../lib/jquery-1.12.4.min',
        template: '../lib/template-web',
        bootstrap: '../bootstrap/js/bootstrap.min',
        user: '../utils/user',
        config: '../utils/config'
    }
});

require(['jquery', 'template', 'bootstrap', 'user'], function ($, template, bootstrap, user) {
    //js代码
})
3. utils/config.js
//模块不依赖其他模块,那么可以直接定义在define()函数之中。
define(function () {
    var BASEURL = 'http://localhost:8000/'

    var URLIST = {
        admin_login: BASEURL + 'admin/login',
        admin_logout: BASEURL + 'admin/logout',
        getUser: BASEURL + 'admin/getuser',

        article_count: BASEURL + 'admin/article_count',
        category_search: BASEURL + 'admin/category_search',
        category_delete: BASEURL + 'admin/category_delete',
        category_add: BASEURL + 'admin/category_add',
        category_edit: BASEURL + 'admin/category_edit',
        search: BASEURL + 'admin/search',
        article_publish: BASEURL + 'admin/article_publish',
        article_delete: BASEURL + 'admin/article_delete',
        article_edit: BASEURL + 'admin/article_edit'
    };
    return URLIST;
})
4.utils/user.js
//依赖模块,第一个参数必须是数组
define(['config'], function (URLIST) {
    var user = {
        /**
         * 登录
         * @param {*} name 
         * @param {*} password 
         * @param {*} callback 
         */
        login: function (name, password, callback) {
            $.ajax({
                url: URLIST.admin_login,
                type: 'post',
                data: { user_name: name, password },
                success: function (res) {
                    callback(res)
                }
            })
        },
        /**
         * 退出登录
         * @param {*} callback 
         */
        logout: function (callback) {
            $.ajax({
                url: URLIST.admin_logout,
                type: 'post',
                success: function (res) {
                    callback(res)
                }
            })
        }
    }
    return user
})
发布了1 篇原创文章 · 获赞 2 · 访问量 40

猜你喜欢

转载自blog.csdn.net/weixin_44856156/article/details/104050418
今日推荐