网站之前用的时间选择 UI 实在太丑,而且功能单一,决定全站改用 https://github.com/xdan/datetimepicker/

里面有好几个 js,奇怪的是,只有 /build 目录下的 full.js 可用,其他的引用后报错如下:

Cannot read property 'formatDate' of null

那就用 full.js 吧,无所谓,能用就行。

本地采用 requirejs 模块化,没问题,用 r.js 打包后,报了个这样的错误:

Mismatched anonymous define() module

仔细看了下,full.js 居然把 jquery.mousewheel.js 也引进来了,怪不得叫 full.js。果断把它去掉了,而 requirejs 配置文件中原来就有了 jquery.mousewheel.js(因为 datetimepicker.js 依赖于 jquery.mousewheel.js) ,再打包,ok 了。

看了下 README 中的 说明,full.js 是可以在浏览器 直接 引用的,而其他 js 引用后报错(我觉得正确姿势不应该引用 full.js),我怀疑是 bug?没有时间去细纠了。

这个开源项目引入并不是我决定的,我应该不会用这个项目,毕竟有 308 个 issue 没解决,而且 README 的开头写着什么?

PLEASE. Help me update documentation.

也是醉了。

我会用什么样的开源项目?之前的时间选择插件用的是 这个,我在周报中吐槽了一波:

对于开源项目的选择,我的个人想法是先选项目火的,从 stars ,作者(团队)知名度,文档完善性,有无完整 demo,社区讨论度,相关问题数等可见一斑。很明显 simple-momentpicker 完全不符合,stars 目前 7 个,一年多没维护了,看了下代码,变量名 a0, b1, c2, tmpData 等不忍吐槽。我猜当时是随便找了个插件就好了,应该没想到后期维护。其次我个人喜欢轻量级的插件,功能不需要太花哨,满足需求就好,最好是无依赖,有依赖的话尽量依赖知名库,这样也易于升级和维护。

至少,datetimepicker 比 simple-momentpicker 要好点 ...

至于那个报错,我怀疑是重复引入 jquery.mousewheel.js 导致的,没有细纠,可以看下 官网解释 或者 这里

使用 requirejs 打包 jQuery 插件 datetimepicker 的问题记录的更多相关文章

  1. 构建基于Javascript的移动web CMS——加入jQuery插件

    当看到墨颀 CMS的菜单,变成一个工具栏的时候.变认为这一切有了意义.于是就继续看看这样一个CMS的边栏是怎么组成的. RequireJS与jQuery 插件演示样例 一个简单的组合示比例如以下所看到 ...

  2. Angular指令封装jQuery日期时间插件datetimepicker实现双向绑定

    一放假就高产似母猪了. 00.混乱的前端界 Angular1.x确实是个学习成本很高的框架,刚开始实习那会儿,前端啥也不懂,工头说用Angular,我们这群小弟也只能硬着头皮学.在这之前,前端的东西大 ...

  3. 使用requireJS的shim參数,完毕jquery插件的载入

    没有requireJS框架之前,假设我们想使用jquery框架,会在HTML页面中通过<script>标签载入.这个时候jquery框架生成全局变量$和jQuery等全局变量.假设项目中引 ...

  4. 【原】react中如何使用jquery插件

    react的思想是虚拟dom,提倡最好较少dom的操作,可是我们在写网页的时候,有些复杂的交互还是离不开jquery插件的.而且当你把jquery直接拿来用的时候,你会发觉会报错,要么是找不到那个插件 ...

  5. 基于RequireJS和JQuery的模块化编程——常见问题解析

    由于js的代码逻辑越来越重,一个js文件可能会有上千行,十分不利于开发与维护.最近正在把逻辑很重的js拆分成模块,在一顿纠结是使用requirejs还是seajs的时候,最终还是偏向于requirej ...

  6. 关于jquery插件 入门

    关于 JavaScript & jQuery 的插件开发   最近在温故 JavaScript 的面向对象,于是乎再次翻开了<JavaScript高级程序设计>第3版,了解到其中常 ...

  7. jquery插件,美化select标签

    最近经常与select打交道,因为ie下的select实在太丑了,css怎么搞都搞不好看,因为程序已经写得差不多了,要再去模拟select改动太大,就想着能否不改动select,同时美化它.借鉴一下这 ...

  8. RequireJS和JQuery的模块化编程

    基于RequireJS和JQuery的模块化编程 由于js的代码逻辑越来越重,一个js文件可能会有上千行,十分不利于开发与维护.最近正在把逻辑很重的js拆分成模块,在一顿纠结是使用requirejs还 ...

  9. 网站建设常用JQuery插件整理

    1.jQuery.lazyload 作用:延迟加载网站图片,常用于电商网站.图片展示网站,对于提高网站打开速度比较有效. 2.Owl Carousel 作用:图片滚动特效.响应式传送带插件,特点是支持 ...

随机推荐

  1. Execution default of goal org.springframework.boot:spring-boot-maven-plugin:1.5.6.RELEASE:repackage failed: Unable to find main class

    异常 [INFO] --- spring-boot-maven-plugin:1.5.6.RELEASE:repackage (default) @ spring-boot-starter-log - ...

  2. linux启动失败

    如图 1.开机界面 按 e 键 2.选择第二个进入就好了 根据网上说的修改kernel 配置  加上 enforcing=0 无效 1.进入界面后再按 e 键 3.选择第二个按e键进入编辑 界面 每次 ...

  3. IOC容器在web容器中初始化——(一)两种配置方式

    参考文章http://blog.csdn.net/liuganggao/article/details/44083817,http://blog.csdn.net/u013185616/article ...

  4. 安装卸载selenium

    安装: C:\Users\xiongjiawei>pip install selenium==2.48.0 Collecting selenium==2.48.0 Retrying (Retry ...

  5. 【Uva10559】Blocks(区间DP)

    Description 题意:有一排数量为N的方块,每次可以把连续的相同颜色的区间消除,得到分数为区间长度的平方,然后左右两边连在一起,问最大分数为多少. \(1\leq N\leq200\) Sol ...

  6. ASP.NET MVC下自定义错误页和展示错误页的几种方式

    在网站运行中,错误是不可避免的,错误页的产生也是不可缺少的. 这几天看了博友的很多文章,自己想总结下我从中学到的和实际中配置的. 首先,需要知道产生错误页的来源,一种是我们的.NET平台抛出的,一种是 ...

  7. Udacity并行计算课程笔记-The GPU Programming Model

    一.传统的提高计算速度的方法 faster clocks (设置更快的时钟) more work over per clock cycle(每个时钟周期做更多的工作) more processors( ...

  8. python方法的延迟加载

    数据挖掘的过程中,数据进行处理是一重要的环节,我们往往会将其封装成一个方法,而有的时候这一个方法可能会被反复调用,每一次都对数据进行处理这将是一个很耗时耗资源的操纵,那么有没有办法将计算后的结果缓存起 ...

  9. RabbitMQ之消费者Demo(队列参数详细说明)

    package com.jiefupay; import java.io.IOException; import java.util.HashMap; import java.util.Map; 8 ...

  10. ubuntu12.04destdrop删除不必要的软件

    sudo apt-get -y --auto-remove purge unity unity-2d*  sudo apt-get -y purge empathy  sudo apt-get -y ...