//配置信息 require.config({ paths:{ /* 如果这些模块在其他目录,比如js/lib目录,则有两种写法。一种是逐一指定路径。 //定义各个js框架路径名,不用加后缀.js */ 'jquery':'../require/lib/jquery', 'zTree':'../require/lib/jquery.ztree.core-3.5', 'tree':'../require/work/tree', 'select':'../require/work/select', 'workjs01':'../require/work/workjs01', 'workjs02':'../require/work/workjs02' }, //加载非规范的模块 /* 这样的模块在用require()加载之前,要先用require.config()方法,定义它们的一些特征.shim属性,专门用来配置不兼容的模块。 具体来说,每个模块要定义: (1)exports值(输出的变量名),表明这个模块外部调用时的名称;(2)deps数组,表明该模块的依赖性。 */ shim: { 'zTree':['jquery'], // 'zTree':{ // deps:['jquery'], //// exports:'zTree', //// exports:'jQuery.fn.zTree', // } } }); /* 主模块的依赖模块是[['jquery','workjs01','workjs02']。默认情况下,require.js假定这三个模块与main.js在同一个目录, 文件名分别为jquery.js,workjs01.js和workjs02.js,然后自动加载。 */ //require(['jquery','add','del','save','select','tree','workjs02'],function($,add,del,save,select,tree,workjs02){ require(['jquery','select','workjs01','workjs02','zTree','tree'],function($,select,workjs01,workjs02,zTree,tree){ select; workjs01; alert(workjs02.jian(10,4)); zTree; tree; });
main.js
define(['jquery','zTree'],function($,zTree){ var stage = "${gtDept.stage}"; var isAdding = true; var setting = null; var treeObj = null; var deptId; $(function() { //加载公司部门树 setting = { async : { enable : true, url : '${ctx}gtDept/queryDeptTree.html?', autoParam : ["id"] }, data : { // 必须使用data key : { title : "" }, simpleData : { enable : true, idKey : "id", // id编号命名 默认 pIdKey : "pId", // 父id编号命名 默认 rootPId : 0 // 用于修正根节点父节点数据,即 pIdKey 指定的属性值 } }, view : { selectedMulti : false // 不允许多选 }, callback : { onClick : function(event, treeId, treeNode, clickFlag) { deptId = treeNode.id; findDetails(deptId); }, // 捕获异步加载出现异常错误的事件回调函数 和 成功的回调函数 onAsyncError : zTreeOnAsyncError,//onAsyncError和 onAsyncSuccess默认为null onAsyncSuccess : function(event, treeId, treeNode, msg) { } } }; //异常错误的事件回调函数 function zTreeOnAsyncError(event, treeId, treeNode, XMLHttpRequest, textStatus, errorThrown) { layer.msg("网络故障!", {icon: 0}); } queryDeptTreeWithoutRoot(); }); return{ // 查询部门树 queryDeptTreeWithoutRoot: function () { treeObj = $.fn.zTree.init($("#dept_tree"), setting); }, //根据选中部门主键ID查询该部门的详细信息 findDetails : function (guid) { $.ajax({ async : true, cache : false, url : "${ctx}gtDept/getById.html", data : { "guid" : guid }, dataType : "json", type : "post", success : function(data) { isAdding = false; clear_form(); $("#form_data").editform(data); }, error : function(data) { layer.msg("网络故障!", {icon: 0}); } }); } }; });
tree.js