问题标签 [filetree]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
algorithm - 将文件树转换为另一个文件树的最短操作序列
给定两个文件树 A 和 B,是否可以确定将 A 转换为 B 所需的最短操作序列或操作序列?
一个操作可以是:
- 创建一个新的空文件夹
- 创建一个包含任何内容的新文件
- 删除文件
- 删除一个空文件夹
- 重命名文件
- 重命名文件夹
- 在另一个现有文件夹中移动文件
- 在另一个现有文件夹中移动文件夹
当 A 和 B 在相同文件夹结构中具有相同内容(或相同大小相同 CRC)和相同名称的相同文件时,它们是相同的。
这个问题让我困惑了一段时间。目前我有以下基本想法:
- 计算一个数据库:
- 存储文件名及其 CRC
- 然后,找到所有没有子文件夹的文件夹,并根据它们包含的文件的 CRC 计算 CRC,并根据它们包含的文件的总大小计算大小
- 提升树为每个父文件夹创建一个 CRC
- 使用具有数据库 A 和数据库 B 的以下循环:
- 计算 A ∩ B 并从两个数据库中删除此交集。
- 使用内连接在 A 和 B 中查找匹配的 CRC,首先是文件夹,按大小排序
- 当有结果时,使用第一个结果移动文件夹或文件(如有必要,可能创建新文件夹),从两个数据库中删除结果的源行。如果有移动,则更新 db A 中新位置父文件夹的 CRC。
- 然后删除数据库 A 中引用的所有文件和文件夹,并创建数据库 B 中引用的文件和文件夹。
但是,我认为这确实是一种次优的方法。你能给我什么建议?
谢谢!
multithreading - FileTree文件的异步操作?
有没有一种方法可以轻松地FileTree
在 gradle 任务中以智能方式处理文件?我基本上需要等待所有文件的执行,就像你可以用 GPars 做的一样,但是我如何用 FileTree 做这个 gradle?
如果我能做类似的事情会很可爱.visit{}.async(wait:true)
,但我的谷歌搜索却一无所获。有没有办法可以轻松地使这个多线程?一个元素的处理对任何其他元素的处理没有影响。
php - PHP 文件夹下拉菜单
我正在尝试制作存储在站点上的文件夹的下拉菜单。例如,顶层是文件夹列表,当用户将鼠标悬停在文件夹名称上时,会出现一个下拉列表,以便用户可以看到其中的所有文件。我对 PHP 很陌生,并且尝试了一些东西,但无法让下拉菜单正常工作。有什么建议么?
编辑:来自评论的附加信息:
目前我正在使用this,它显示顶层,但它获取文件夹的内容以在下拉列表中列出,这就是问题所在。对于第一层,我有
并可以显示所有文件夹的所有内容
我只是无法让它显示在下拉列表中。
java - 如何在 JTree 文件树中获取节点以知道它是哪个文件?
我使用 JTree 编写了一个文件树,现在我正在尝试使其更高效。我正在尝试实现延迟加载,但我无法让节点识别它们是哪个文件以扩展下一层。我试过让他们根据他们级别的文件名列表检查他们的名字,但由于某种原因这不起作用。从长远来看,这无论如何都行不通。我也尝试将文件本身设置为节点内容,但它仍然无法将其识别为文件。
我确定我错过了一些简单的东西,但我不知道它会是什么。我一直在四处寻找,并没有找到任何东西。谁能帮我解决这个问题?
javascript - 使 Jeditable 致力于新元素
我正在尝试使Jeditable适用于使用此jquery 文件树创建的新元素。
右键单击文件夹或文件会显示上下文菜单,单击上下文菜单上的“重命名”项后,我想激活 Jeditable。
我正在使用这个上下文菜单和这个代码:
但不起作用,我在网上(这里)读到我应该使用 .live(.on() 可以吗?因为我使用的是 jquery 1.7.1)但我不知道为什么,你能帮我?
jquery - JQuery 树文件展开文件夹
关于这个 SO 问题:“jquery 文件树 - 默认打开文件夹?”
我试图让 Bermo 的解决方法运行......
它有效,但仅适用于文件夹
但不适用于以下文件夹:
这是我的函数调用:
f 是根文件夹和要展开的文件夹。
我不知道如何让这个工作。
php - 如何管理文件树
我有一个 JS 文件树,我可以在其中使用 ajax 删除、重命名、添加新文件...我想知道在删除文件或创建或移动新项目时更新它的最佳方法是什么:
重新加载整个树,但是当它很大且加载缓慢时可能会出现问题
只重新加载它的一部分,但如何?
例如,在删除时,如果 ajax 可以,则删除与其相关的 html 部分
我现在正在使用第三个选项,但我认为这不是最好的方法吗?
我在服务器端使用 jquery 和 php,这个文件树有点修改http://abeautifulsite.net/blog/2008/03/jquery-file-tree/
ruby-on-rails - 将 contextMenu 插件与 fileTree 插件一起使用而不会失去可拖动支持
服务器正在运行 Ruby on Rails。Javascript 是使用 Coffeescript 编写的。
我目前正在使用带有上下文菜单插件的 jQuery 文件树插件。目前两者都在工作,但有一个小问题。我还在文件树中启用了可拖动,并且在释放左键后它不会取消。在下图中,鼠标已经被释放。
加载的页面有一个 div:
这个 div 由来自不同控制器的另一个页面填充。代码是:
此页面还加载了可拖动代码:
上下文菜单是这样添加的:
@on_context_menu 只是一个函数(尽管它与这个问题无关)。
如果您在#file_tree div 之外单击,则可以停止该问题(克隆返回其原始状态)。但是,似乎正确处理了 click、mousedown 和 mouseup 事件。此外,上下文菜单没有问题,不会引发可拖动问题。
关于我四处寻找修复程序,我什么也没找到。文件树插件有相当数量的信息浮动,但上下文菜单似乎几乎没有(一定不受欢迎?)。而这些都没有同时拥有。如果您需要一些其他信息,请说明。
编辑:我发现这实际上是因为插件需要在 mouseup 事件上调用 e.stopPropogation() 以防止它打开真正的上下文菜单。有人知道如何手动执行 stopdrag() 事件吗?如果我调用 $(this).trigger('stopdrag') 以防你建议这样做,它不起作用。
xamarin.ios - 设计器文件与主类文件分开列出
我有一个 UIViewController 类,它有自己的设计器文件,但设计器文件未显示为解决方案面板(GameScreen)中的子树元素。另一方面,第二个 UIViewController (SettingsScreen) 设计器文件显示为主类的子类。
通常设计器文件应显示为子对象。出了什么问题,我该如何解决?
代码编译正确。
smalltalk - Monticello - 一次提交保存到 Squeaksource 和 Filetree
我想要的是一次将一个包或一组包提交到两个存储库,如果可能的话,使用相同的版本号,因此一个存储库可以是另一个存储库的镜像。
可以使用Gofer吗?