首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何使用CakePHP4中的sortablejs库?

如何使用CakePHP4中的sortablejs库?
EN

Stack Overflow用户
提问于 2020-12-14 06:59:54
回答 1查看 212关注 0票数 0

我试图在CakePHP4中使用sortablejs,并且我首先阅读了ReadMe。

所以,要安装它,使用npm install sortablejs --save来安装它,我找到了要运行的东西。

所以我去了cd cake_project/webroot/js并经营npm install storablejs --save

node_modulespackage-lock.json这两个目录现在安装在webroot/js中。

所有层次结构都在下面。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
/node_modules
    |
    |- /sortablejs
      |- LICENSE
      |- package.json
      |- /dist
          |- sortable.umd.js
          |- sortable.umd.js.map
      |- /modular
          |- sortable.complete.esm.js
          |- sortable.compsle.esm.js.map
          |- sortable.core.esm.js
          |- sortable.esm.js
          |- sortable.esm.js.map

我照自述的话做了。我把下面的内容放在template/view.php中。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<ul id="items">
  <li>item 1</li>
  <li>item 2</li>
  <li>item 3</li>
</ul>

<?= $this->Html->script('view', ['block' => true]) ?>

接下来,我将以下内容添加到webroot/js/veiw.js中。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import Sortable from "sortablejs";

let el       = document.getElementById("items");
let sortable = Sortable.create(el);

然后,我在DevTools的控制台中得到了一条错误消息,上面写着Uncaught SyntaxError: Cannot use immport statemnt outside a module view.js:1

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import Sortable from 'node_modules/sortablejs';

// ...

检查控制台日志。Uncaught SyntaxError: Cannot use import statement outside a module view.js:1。我也犯了同样的错误。

我查看了js目录中的DevTools Sources,注意到sortablejs不存在。

template/view.php的最后一行中,在template/view.php的最后一行中添加<? = $this->Html->script('node_modules/sortablejs', ['block' => true]) ? >

我调用了一个名为node_modules.js的不存在的文件。所以,<? = $this->Html->script('node_modules/sortablejs/, ['block' => true]) ? >。现在叫node_modules/sortablejs/.js

真对不起。我无能为力了。我该怎么办?请帮帮我。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-12-14 17:40:18

首先,并不是所有浏览器都支持,所以除非您知道只针对支持它们的浏览器,否则不能使用import语法,而且由于错误消息声明,它必须在模块本身中使用。

由于您还不熟悉所有这些东西,ES6、模块、绑定器等等,所以现在您可能想要使用UMD库,它可以不用任何导入之类的东西使用。

假设node_modules文件夹位于您的webroot文件夹中,那么UMD库的正确路径将是完整的根相对URL,例如:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
/node_modules/sortablejs/dist/sortable.umd.js
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$this->Html->script('/node_modules/sortablejs/dist/sortable.umd.js', ['block' => true])

然后您可以直接使用库,就像主页上的一样:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
new Sortable(swapDemo, {
    swap: true, // Enable swap plugin
    swapClass: 'highlight', // The class applied to the hovered swap item
    animation: 150
});

我建议在webroot文件夹之外安装模块,然后将它们复制或符号链接到webroot文件夹中,最好是作为构建脚本的一部分。

GitHub存储库中的示例最有可能用于解决导入的之类的绑定器的上下文中。使用浏览器中的模块看起来有点不同,如下所示:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<script type="module">
    import Sortable from '/node_modules/sortablejs/modular/sortable.complete.esm.js';
    
    const el = document.getElementById('items');
    const sortable = Sortable.create(el, {
        swap: true, // Enable swap plugin
        swapClass: 'highlight', // The class applied to the hovered swap item
        animation: 150
    });
</script>
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65291240

复制
相关文章
sortablejs插件在el-table中的运用
中文文档:https://www.itxst.com/sortablejs/neuinffi.html
猫老师的叶同学
2023/03/01
1.3K0
sortablejs插件在el-table中的运用
SortableJS / vue.draggable.next 使用笔记,持续记录
Github:https://github.com/SortableJS/vue.draggable.next,完整代码如下:
房东的狗丶
2023/02/17
1.1K0
工作中如何使用数据库
本篇讲述软件测试面试关于数据库的一些常见面试题及工作中该如何使用数据库,特别适合一些刚入门的小白。软件测试其实很简单~
小雯子打豆豆
2021/09/23
9740
工作中如何使用数据库
【说站】python中marshmallow库如何使用
1、是专门用来支持 Python 对象和原生数据相互转换的库,如实现 object -> dict,objects -> list, string -> dict, string -> list 等的转换功能。
很酷的站长
2022/11/23
5370
【说站】python中marshmallow库如何使用
使用Windows 7中的库
Windows7中的库功能让管理文件和文件夹变得简单。今天我们就来看看如何使用库,如何把网络共享的盘添加到库中。Windows7中的库让你更方便地管理散落在你电脑里的各种文件。你再也不必打开层层的文件
张善友
2018/01/19
1.6K0
使用Windows 7中的库
Python 中 turtle 库的使用
Turtle 库是 Python 内置的图形化模块,属于标准库之一,位于 Python 安装目录的 lib 文件夹下,常用函数有以下几种:
村雨遥
2022/06/15
8290
Python 中 turtle 库的使用
如何使用Columbo识别受攻击数据库中的特定模式
Columbo是一款计算机信息取证与安全分析工具,可以帮助广大研究人员识别受攻击数据库中的特定模式。该工具可以将数据拆分成很小的数据区块,并使用模式识别和机器学习模型来识别攻击者的入侵行为以及在受感染Windows平台中的感染位置,然后给出建议表格。需要注意的是,当前版本的Columbo仅支持在Windows操作系统平台上执行任务。
FB客服
2021/04/29
3.5K0
如何在 K8S 中优雅的使用私有镜像库
在企业落地 K8S 的过程中,私有镜像库 (专用镜像库) 必不可少,特别是在 Docker Hub 开始对免费用户限流之后, 越发的体现了搭建私有镜像库的重要性。
落跑架构师M
2020/12/15
3.2K0
使用Python PIL库中的Image
  今天,是我来到博客园的第五天,发现自己还没有头像,想着上传ubuntu系统中我很喜欢的一个背景图片来当头像,但是因为图片过大,上传失败了。那么,我们如何使用python中强大的PIL库来进行图片裁剪呢? 
py3study
2020/01/17
1K0
库中如何实现vector
本应该开空间,然后再将数据插入进容器vector,此处我们复用resize函数的一种.就不需要自己再手撕一遍了.
初阶牛
2023/10/14
1710
库中如何实现vector
Dart 中的库的引入与使用
在Dart中,library指令可以创建库,每个Dart文件都是一个库,即使没有使用library指令来指定,库的使用时通过import关键字引入。
越陌度阡
2020/12/11
1.2K0
Dart 中的库的引入与使用
如何使用Mechanize::PhantomJS库
以下是一个使用Mechanize::PhantomJS库的Perl下载器程序,用于下载。
用户614136809
2023/10/18
1580
如何使用flask 中的Blueprint
在 Flask 中,Blueprint 是一种将应用程序组织为模块化结构的方式。使用 Blueprint 可以将应用程序分成多个部分,每个部分有自己的视图函数、模板、静态文件等。
测试开发囤货
2023/03/14
1.1K0
如何使用flask 中的Blueprint
如何使用Python中的帮助
本文介绍了如何利用Python自带的帮助文档和内嵌的帮助命令进行编程学习,强调了注意利用各种帮助资源的重要性。
雷大亨
2018/01/01
1.7K0
库中是如何实现string类的?
需要注意的是,如果采用无参构造,刚开始容量是0. 这就导致是初次扩容,容量开始是0,所以这里要判断扩容前,容量是否是0,再考虑1.5倍或者二倍扩容.
初阶牛
2023/10/14
1820
库中是如何实现string类的?
数据库使用教程:如何在.NET中连接到MySQL数据库
dbForge Studio for MySQL是一个在Windows平台被广泛使用的MySQL客户端,它能够使MySQL开发人员和管理人员在一个方便的环境中与他人一起完成创建和执行查询,开发和调试MySQL程序,自动化管理MySQL数据库对象等工作。
麻烦成了精
2020/11/12
5.6K0
如何使用条码标签软件的模板库
很多用户在初次使用条码标签软件的时候,会有一些手足无措,不知道从哪里开始入手设计制作一个标签,会有各种各样的问题,比如标签的尺寸设置成多少?这个标签尺寸会不会有限制?制作一个标签如何保存成模板,以后持续使用?以上的问题都是用户平时向我们咨询的。鉴于这种情况,我们开发团队就给软件做了升级,添加了一些常用标签的模板库,这样用户就可以直接使用软件里的标签模板了。下面小编就详细介绍模板库的使用方法。
神奇像素科技
2022/01/11
1.4K0
如何使用条码标签软件的模板库
metasploit中数据库PostgreSQL的使用
Metasploit支持MySQL、PostgreSQL和SQLite3数据库。默认数据库PostgreSQL。下面是PostgreSQL数据库的简单使用命令:
青木
2019/03/20
1.1K0
点击加载更多

相似问题

如何使用库SortableJS提交新排序的元素列表

15

如何使用SortableJS仅检测drop事件

13

如何使用动态创建的HTML使用拖放?(SortableJS)

10

如何从启用SortableJS的UL中删除元素

139

如何在cakephp4中比较datetime

11
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

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

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
社区富文本编辑器全新改版!诚邀体验~
全新交互,全新视觉,新增快捷键、悬浮工具栏、高亮块等功能并同时优化现有功能,全面提升创作效率和体验
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文