我们阅读了每一条反馈,并非常认真地对待您的意见。
要查看所有可用的限定符,请参阅我们的文档.
有关于这个项目的问题吗?注册一个免费的GitHub帐户以打开一个问题,并联系其维护者和社区。
单击“注册GitHub”,表示您同意我们的服务条款和隐私声明。我们偶尔会向您发送与帐户相关的电子邮件。
已经在GitHub上了?登录到您的帐户
大多数web项目现在都使用模块绑定器(如Webpack、System.js、JSPM等)构建资产。这将有助于让这些捆绑商更容易使用Fancytree。这就是我如何将Fancytree(以最简单的方式)与Webpack结合使用的方法,虽然它很有效,但感觉很尴尬:
const jQuery=要求('jQuery')//所需jquery-ui模块最少require('jquery-ui/core')require(“jquery-ui/widget”)require(“jquery-ui/effect-blind”)//通过注入jquery导入fancytreerequire('imports?jQuery=jQuery!jQuery.fancytree/dist/jQuery.ancytree.js')//潜在的扩展(通过注入jquery)require('导入?jQuery=jQuery!jQuery.fancytree/src/jQuery.fancyttree.childcounter.js')//现在我们可以使用jQuery#fancytree
虽然jQuery不能很好地与任何模块绑定器配合使用,但一个简单的改进想法是通过自动要求jQuery来做类似于jqueryUi的事情,而不是假设jQuery是全局变量。
例如,jquery-ui/core.js看起来像这样:
var jQuery=要求('jQuery');(函数($,未定义){//...})(jQuery);
文本已成功更新,但遇到以下错误:
谢谢,我对这里的改进持开放态度。这将是向后兼容的吗?如果不是,您是否知道这种模式?
对不起,出了点问题。
当检查模块包装是否存在时,向后兼容性是可能的。这里有一篇很好的关于它的博客文章http://ifandelse.com/its-not-hard-making-your-library-support-amd-and-commonjs/
现在,我看到了从jquery-ui加载什么的额外复杂性。OOTB,我上面列出的3个jquery-ui模块已经足够了(即使它们自己加载更多),但我认为这个插件支持的不仅仅是“盲”效应。。。
除此之外,还可以进行一些假设以简化。下载dist文件的人肯定对任何模块绑定都不感兴趣,他们会将缩小后的文件直接放在脚本标记中。其他使用browserify的人可能对模块绑定也不感兴趣,而那些使用npm的人很可能对此感兴趣。看起来这就是jquery-ui的人一直在使用的方法(通过直截了当地说var jQuery=要求('jQuery');在dist文件中)。
var jQuery=要求('jQuery');
例如,我们不能通过NPM在通过Brunch构建的过程中轻松地包含这个库,这太糟糕了。
看起来jQueryUI1.12已经改变了小部件的布局。有什么建议吗?由于我自己没有使用这些装载机,如果有人可以帮助测试,甚至提交PR,那将很酷。。。
IMO,fancytree是一个不错的插件,应该对其进行重构,以摆脱jquery UI小部件系统,并且可以很容易地将其模块化以支持UMD。
有什么requirejs解决方案吗?
目前,很少有文档显示如何使用最新版本的requirejs。
以下是如何使用jquery.fancytree所有和最新jquery-ui在AMD的支持下,因为使用单个扩展将需要大量的匀场
jquery.fancytree所有
jquery-ui
要求.配置({ 路径:{ “jquery”:'./js/vendor/jquery“, “jquery-ui”:'./js/vendor/jquery-ui', “jquery.fancytree”:'./js/vendor/fancytree/jquery.fancytrea-all“ }, 垫片:{ “jquery.fancytree”:{ deps公司:[“jquery”, “jquery-ui/core”, 'jquery-ui/effect', 'jquery ui/effects/effect blind', “jquery-ui/widgets/draggable”, “jquery-ui/widgets/droppable”], 出口:“jQuery.fn.fancytree” } }, onBuildWrite(内部版本写入):功能 (模块名, 路径, 目录) { '使用严格'; 如果 (模块名 === “jquery.fancytree”) { 目录 = '定义(“jquery.fancytree”,[“jquery”,“jquely-ui/core”,“jquery-ui/effects/effect-blind”,“j查询-ui/widgets/draggable”,“J查询-ui/小部件/droppable”],函数(jquery){' + 目录 + '});'; } 返回 目录; } }); //用法 定义([ “jquery”, “jquery.fancytree”, “css/css/fancetree/skin-custom/ui.fancetree.css', ], 功能($) { '使用严格'; // $(“#tree”).奇树({ 复选框:真的, 来源:[{标题:'节点1'}, {标题:'节点2',钥匙:“id2”}] }); // }); //
@djangosdk谢谢你举个例子。(#694现在是一个悬而未决的问题,一旦实现,应该会让这变得更容易。)
合并分支“映射文件”
17227立方英尺
关闭 #781 关闭 #773更新#634更新#603
3b3桶
请参见https://github.com/mar10/fancytree/wiki#embed-fantytree-on-your-web页面用于新模块支持
没有分支或拉请求