团队项目中js冲突

在我们平时的项目中,特别是模块化开发中。经常会遇到一些js冲突问题,特别是当项目复杂到一定程度的时候。比如项目中引入了相当多的类库,框架以后。

那么。我们如何去避免或者解决这类问题呢?

1、避免使用全局变量。

  2、使用匿名函数的方法来把自己的模块包起来。这样你所定义的变量 就只能在这个匿名函数中使用了。

  如果存在模块之间的通信怎么办呢?我们可以适量的使用全局

  例如:

   var win={};//全局对象
        (function(){//匿名函数A
            win.str1="aaa";
        })();
        
        (function(){//匿名函数B
            console.log(win.str1);
        })();

  这样你就可以在函数B中使用函数A中的变量。但是会存在一个问题。就是,B中如果有一个变量跟A中的命名一样,那就会产生覆盖。

这样就用到了一个叫命名空间的概念!

命名的时候加上一个前缀。window下的全局变量.命名空间.变量名

var win;    
win={};    //一级命名
win.A = {};   //二级命名
(function(){
    win.A.str1="qqq";})();

win.B={};
(function(){
    console.log(win.A.str1);
    win.B.str1="aaa";
    console.log(win.B.str1);
})();

这是一种解决问题的办法吧,如有大神看到。忘指点!

时间: 2024-08-07 00:17:01

团队项目中js冲突的相关文章

项目中js的工具类

js工具类的功能有: 1.去掉字符串前后空格 2.清空select 3.验证手机号 4.字符串转换int型数字 5.获取checkbox的选中的值 6.去掉左边的空白 7.去掉邮编的空白 源码如下: /** * 去掉字符串前后空格 * * @param str * @returns */ function trim(str){ return str.replace(/^(\s|\xA0)+|(\s|\xA0)+$/g, ''); } /** * 清空select * * @param selec

团队项目中个人的定位及计划

我们团队在这一次的移动APP开发计划中准备做一个针对上海地区大学分数线进行专业推荐的APP,根据前几章的学习,团队中的成员将会被初步分为开发人员.测试人员以及PM(program manager).我在这次的软件开发中担任开发人员的职务. 在开发开始的阶段,全员首先一起明确这次APP的主题,一起分析好这款APP将要实现怎样的功能,将要面向哪些受众:对于市面上的同类软件,我们还能添加哪些实用的功能.首先将会尽可能地将上海地区内高校近几年的分数线.每个系的最低录取分数统计好录入系统中,再根据考生相应

项目中js调用service和procedure的办法

Ajax.js 1 /**通用ajax服务的定义对象 2 3 * services可以是单个服务对象,也可以是service服务数组 4 * 具体服务的定义请参考appendServices成员函数 5 */ 6 function Service(services){ 7 this.services=[]; 8 this.shareParameters={}; 9 /**添加共享参数,在这里统一设置共享参数 10 */ 11 this.addShareParameters=function(sh

团队开发中Git冲突解决

正常来说我们团队协作开发过程中,冲突是常有的事,下面介绍下本人在开发中的解决办法. 冲突的主要原因就是由于我们开发人员在分支的同一位置写入了不一样的代码,然后合并到主干上导致我们冲突. 方法: 当冲突发生时,我们可以选中冲突的代码 ---->点击鼠标右击 ---->Compare with ----->HEAD Revision进行两个窗口的代码比较即可,删除冲突的代码即可 解决冲突办法:删除冲突的代码,然后在add to index就可以了,然后我们在commit提交到本地即可.

项目中js文件修改后浏览器不能及时更新的解决办法

现在就分别把IE,firefox,chrome中解决办法贴出来供大家参考: 1.firefox(火狐浏览器)解决问题 第一步,在浏览器中敲入:about:config ,然后回车 第二步,在显示出的内容中找到下面的列表内容,双击下面图中圈出的内容 在出现的对话框中将3改为1 然后关闭这个页面,你就可以让你的项目在更新时浏览器及时地更新你项目中的js文件. 2.IE 打开IE浏览器,同时按住ALT+X,在出现的页面上点击Internet选项,进入Internet选项配置界面中,点击在下面的图中圈出

关于此次团队项目中技术选型问题

关于此次软件项目的开发,我们设计了一个软件应用型的项目.显然,我们的项目跟市场上的主力军项目来比,就像一个刚出蛋壳的小鸡,很多地方都有可能出现纰漏.但是,在信息技术多元化发展的今天,我们必须给予项目技术层面足够多的关注,不然的话,吃亏的只能更加是自己.下面是此次项目开发中的关于技术选型方面的历程: 最初我们打算的项目是网站型的项目,因为网站性的项目访问量可能会比较大,而且还总是受到网络速度的影响,所以我们在选择框架时在前端WEB层中选择了Model View Controller(MVB).之所

SVN在团队项目中的使用技巧:[2]Tag操作

SVN是Subversion的简称,是一个开放源代码的版本控制系统 本节讲述SVN使用中的TAG操作 文中若有错误或不足之处,欢迎留言指正 工具/原料 电脑 SVN 方法/步骤 1.认识SVN中TAG 所谓TAG就是一个特别的版本,需要特别为它做一个记号,例如:笔者开发一款Android APP,刚刚完成1.0版本,这对于笔者来说很有意义:同时笔者所在公司规定每一版正式送测前必须打个TAG 2.如何在SVN中制作TAG 2.1找到存放代码的文件夹 2.2右击选中SVN下的Branch/TAG..

vue 项目中 js命名规则

类型 规范 示例 常量 全字符大写,单词用 '_' 分隔 FETCH_USERS.GET_USERS 变量.函数 小写开头驼峰式 camelCase 类.特殊意义的命名空间 大写开头驼峰式 CamelCase 方法.函数 a. 动词 或 动词+名称 组合b. get 必须要有返回值   布尔值变量 is 或 has 前缀   私有属性或方法 用 '_' 或 '__' 前缀   事件处理函数 handle前缀 或 Handler 后缀 原文地址:https://www.cnblogs.com/aj

TFS中创建团队项目

第一步先连接到团队项目管理器 在这一步中可输入,TFS服务器的链接,然后输入 用户名和密码后就是这个界面 . 在这个界面中就是你已经加入的团队项目了. 现在我们来创建一个项目, 调了团队资料管理器,找到当前已经连接的项目   接下来输入项目名称. 的这个地方有三种项目管理模板,看自己需要了.我们用的是Scrum   接下来是代码的版本控制,这二个的区别是一个会在本地建立一个库,你要拉区和提交才能完成.个人喜欢Git.但是团队成员一些喜欢TFVC我们用TFVC吧. 下面就完成了.   现在把我们创