首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >在ES6中将类绑定到全局范围

在ES6中将类绑定到全局范围
EN

Stack Overflow用户
提问于 2016-08-05 11:26:30
回答 1查看 9.8K关注 0票数 4

我试图在不使用任何jQuery的情况下在ES6中重新创建jQuery验证器,在尝试重新创建它通过使用全局范围添加验证方法的功能时遇到了一个障碍,也就是说,如果您调用Validator.addMethod anywhere,它将在Validator中运行相关的函数并向Validator添加一个方法。

我似乎不能在ES6中这样做,因为我不允许将类导出到全局范围,我的类是,无法从窗口对象访问,例如,jQuery是,如果没有它,任何想要添加新验证函数的人都必须import一个新函数来添加类,而且我不能简单地调用

代码语言:javascript
运行
AI代码解释
复制
Validator.addMethod('required', function(element, value){
  return value.length > 0;
})

在加载验证器类之后,我想要的任何文件,所以我的问题是,在ES6中这真的不可能,还是我遗漏了什么?我已经知道这不是最好的实践,而且可以接受建议,但是即使对于不熟悉ES6的人来说,这个想法也很容易使用。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-08-05 11:34:16

ES6及以上的设计是为了避免对全球范围造成污染。您所关心的只是JavaScript中许多不好的编码实践的解决方案。

顺便说一句,您可以始终访问window对象并添加一个与类相同的属性:

代码语言:javascript
运行
AI代码解释
复制
class Validator {}

window.Validator = Validator;

类...because仍然是一个构造函数和原型继承,由基于类的语法包装.

如果要在浏览器和NodeJS中分发库,您可能需要这样做:

代码语言:javascript
运行
AI代码解释
复制
class Validator {}

var global = window || global;
global.Validator = Validator;

顺便说一句,如果你想以正确的方式做事,你可以使用通用模块定义发布你的库。在通用模块定义(UMD)的官方GitHub存储库中了解更多信息

票数 11
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38796519

复制
相关文章
java集合框架源码解析_java源代码怎么用
我们知道,java 中容器分为 Map 集合和 Collection 集合,其中 Collection 中的又分为 Queue,List,Set 三大子接口。
全栈程序员站长
2022/09/23
1.4K0
java集合框架源码解析_java源代码怎么用
java课程设计(简易计算器)源代码 JAVA 源代码有解析 免费分享[通俗易懂]
这是我挺久以前课程设计java写的计算器,只能实现基本的功能,我现在分享出来希望能帮助到别人。写得其实挺一般的,见谅见谅。有课程设计任务的学弟学妹也是写计算器的可以看看参考参考。源代码里我写有挺多解析的,能帮助理解。
全栈程序员站长
2022/07/23
3.2K1
java课程设计(简易计算器)源代码 JAVA 源代码有解析 免费分享[通俗易懂]
SIFT matlab源代码解析[通俗易懂]
sift是目前常用的local feature的描述子。sift特征匹配算法可以处理两幅图像之间发生一些平移、旋转、仿射等匹配问题。因为早前自己要做一个图像拼接的问题,所以用到了sift。写这篇blog,是因为自己准备向CV进军,开始着手写blog来积累知识,这也是我第一篇blog,虽然这篇blog很简陋,纯属向sift致敬,但也方便一些初学者使用吧。以后也会不定期对自己的一些在CV的见解进行发表,希望能通过这个和大家相互讨论。如果您想对其原理有个透彻的理解,可以参考下面这篇blog,博主写的非常详尽 —— [ sift算法详解 ]
全栈程序员站长
2022/07/04
4600
SIFT matlab源代码解析[通俗易懂]
java helloworld源代码_Java Hello World源代码剖析
public static void main(String[] args) {
全栈程序员站长
2022/09/01
2.7K0
java helloworld源代码_Java Hello World源代码notepad++版
1、 在E:\CodeDemo\Java文件夹下(你也可以选择自己的文件夹)新建一个txt文本文件。
全栈程序员站长
2022/09/01
1.1K0
dubbo源代码解析之-集群容错
Failover Cluster:失败自动切换,当出现失败,重试其它服务器,通常用于读操作(推荐使用)
yiduwangkai
2019/09/17
4600
dubbo源代码解析之-集群容错
typecho源代码解析4 - 业务逻辑
由路由表中的正则表达式我们能看出首页的URL为https://blog.phpgao.com/或http://www.phpgao.com,并且不接受任何参数。
老高的技术博客
2022/12/28
2610
typecho源代码解析4 - 业务逻辑
java语言helloworld源代码[通俗易懂]
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/140211.html原文链接:https://javaforall.cn
全栈程序员站长
2022/09/01
1.4K0
java获取网页源代码
public static String getHtmlContent(URL url, String encode) { StringBuffer contentBuffer = new StringBuffer(); int responseCode = -1; HttpURLConnection con = null; try { con = (HttpURLConnection) url.openConnection(); con.setRequestPro
似水的流年
2018/01/18
2K0
java获取网页源代码
public static String getHtmlContent(URL url, String encode) {    StringBuffer contentBuffer = new StringBuffer();    int responseCode = -1;    HttpURLConnection con = null;    try {     con = (HttpURLConnection) url.openConnection();     con.setR
似水的流年
2018/01/18
2K0
java获取网页源代码
public static String getHtmlContent(URL url, String encode) { StringBuffer contentBuffer = new StringBuffer(); int responseCode = -1; HttpURLConnection con = null; try { con = (HttpURLConnection) url.openConnection(); con.setRequestPro
似水的流年
2019/12/10
1.9K0
java获取网页源代码
public static String getHtmlContent(URL url, String encode) {    StringBuffer contentBuffer = new StringBuffer();
似水的流年
2019/12/11
2.2K0
java获取网页源代码
public static String getHtmlContent(URL url, String encode) {    StringBuffer contentBuffer = new StringBuffer();
似水的流年
2018/01/12
1.7K0
开源Registry项目Harbor源代码结构解析
容器应用的开发和运行离不开可靠的镜像管理。从安全和效率等方面考虑,在企业私有环境内部署的Registry服务是非常必要的。Harbor(https://github.com/vmware/harbor)是由VMware中国研发团队为企业用户设计的Registry Server开源项目,包括了权限管理(RBAC)、图形管理界面、LDAP/AD集成、审计、自我注册、HA等企业必需的功能,同时针对中国用户的特点,原生支持中文,并计划实现镜像复制(roadmap)等功能。
Henry Zhang
2019/04/12
1.3K0
开源Registry项目Harbor源代码结构解析
长安链ChainMaker TBFT共识源代码解析
长安链ChainMaker(以下简称“ChainMaker”)目前实现了很多种共识算法,比如SOLO、RAFT、TBFT、HOTSTUFF等,TBFT共识算法是ChainMaker实际应用中常见的共识算法。TBFT共识算法是一种拜占庭容错算法,可以在拜占庭节点数小于总数1/3的情况下,保证系统的安全运行,本文主要对ChainMaker TBFT共识源代码进行解析。
bengbengsu
2022/04/26
9500
长安链ChainMaker TBFT共识源代码解析
Java 源代码和 C 源代码的运行区别 原
Java 源代码需要进行编译成字节码后在 Java 虚拟机上运行,这样 Java 程序能够保持独立性和跨平台功特性。
HoneyMoose
2019/01/30
1.7K0
Java 源代码和 C 源代码的运行区别
                                                                            原
【程序源代码】java 开发框架
Java ava EE(J2EE)快速开发框架,基于主流技术(Springboot、Spring MVC、MyBatis、Bootstrap、ACE),是XJJ框架的springboot版本。系统的代码生动生成、极简权限框架、通用service和dao设计、后台页面设计及封装的xjj_bootstrap-tab框架。
程序源代码
2020/04/01
1.1K0
【程序源代码】ChatGPT Java Api
注意:一个Chatbot实例为一个Session,会持有对话上下文,可以回复:继续 让机器人接着说。如果需要对话互相隔离,new 多个Chatbot实例即可。
程序源代码
2023/07/15
4110
深度学习之 TensorFlow(三):TensorFlow 源代码解析
分析一下 TensorFlow 的文件结构。这里的源代码版本是 TensorFlow1.7.0 。 目录结构如下: 其中的核心目录是 tensorflow 目录,最重要的源代码保存在这里,目录结构如下
希希里之海
2018/05/16
9600
【程序源代码】部标JT808协议解析
程序源代码
2023/07/19
7620
【程序源代码】部标JT808协议解析

相似问题

Java源代码解析

11

Java :解析java源代码,提取方法

70

如何解析Java源代码?

10

Java源代码解析器

45

用Scala解析Java源代码

11
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档