【问题标题】:$.csv undefined even after importing jquery-csv即使在导入 jquery-csv 之后 $.csv 也未定义
【发布时间】:2018-08-07 09:36:49
【问题描述】:

我正在尝试使用此 jquery-csv 插件将 csv 文件解析为数组,但是在检查 $.csv 的日志时显示未定义。但是,当我直接在控制台中复制并执行插件中的代码时,$.csv 可以工作。我什至尝试了 jquery 的 getScript() 方法将 jquery-csv 直接导入我的自定义脚本,但它显示未定义。

$.getScript("../js/jquery-csv.js"); console.log($.csv);

还尝试在 head 中添加它,它会显示在 Chrome 开发者工具中 script(scr='https://cdnjs.cloudflare.com/ajax/libs/jquery-csv/0.8.9/jquery.csv.min.js') included this in the head of the page. It shows up in head through chrome devtools

P.S - 使用 pug 模板引擎

【问题讨论】:

  • 我们无法神奇地知道您尝试导入它的样子,以及它出了什么问题。你为什么不给我们看?更多:How do I ask a good question?
  • 我们需要查看您使用的一些代码。帮助我们帮助您。
  • $.getScript("../js/jquery-csv.js"); console.log($.csv);
  • 为什么不使用标准的<script 标签?另请记住,在加载脚本之前您正在运行console.log($.csv);。 getScript 是异步的,它提供了一个回调函数供您在代码完成后使用它来运行代码。 api.jquery.com/jquery.getscript 所以$.getScript( "../js/jquery-csv.js" ) .done(function( script, textStatus ) { console.log($.csv); })
  • script(scr='https://cdnjs.cloudflare.com/ajax/libs/jquery-csv/0.8.9/jquery.csv.min.js') 将其包含在页面顶部。它通过 chrome devtools 显示在头部

标签: javascript jquery csv jquery-csv


【解决方案1】:

在运行getScript 函数后,您不能直接使用$.csv。因为加载 js 可能需要一些时间,但 console.log 语句在 getScript 语句运行之后运行。所以你必须试试这个..

$.getScript("../js/jquery-csv.js",function(){
    console.log($.csv);
});

【讨论】:

  • 成功了!但是我仍然不明白为什么考虑到我在执行 $.csv 之前等待文档准备好,将脚本添加到头部本身不起作用。
  • 脚本加载后触发回调,但不一定执行。
猜你喜欢
  • 1970-01-01
  • 2016-02-17
  • 1970-01-01
  • 1970-01-01
  • 2018-04-13
  • 1970-01-01
  • 1970-01-01
  • 2017-10-09
  • 1970-01-01
相关资源
最近更新 更多