不止一次遇到这个问题了。

在nuxt的issue It’s not clear how to include jQuery code #356里面看到了类似情况,不过这位smth仁兄最后选择了放弃,改用directives,可惜这个issue已经closed,不然可以用我蹩脚的英语来码楼……

这里记录下我的解决方法。

问题描述

在plugins下,添加了JS文件,该文件中引入了 jQuery,定义了多个函数,函数中包含了DOM操作。

比如这样的一个helper.js 文件:// plugins/helper.js

import $ from 'jquery'

export default {

methods: {

saySomething(words) {

const element = $(`

${content}

`)

......

}

}

}

在组件中调用了该文件中的方法 saySomething,页面报出 jQuery requires a window with a document 的错误。

解决方法一些只兼容客户端的脚本被打包进了服务端的执行脚本中去。 对于只适合在客户端运行的脚本,需要通过使用 process.client 变量来判断导入

所以解决方法就很简单了,给saySomething添加上判断可执行的条件即可。

修改helper.js的saySomething:// plugins/helper.js

import $ from 'jquery'

export default {

methods: {

saySomething(words) {

if (process.client) {

const element = $(`

${content}

`)

......

}

}

}

}

OK.

参考

nuxt 如何引入js_Nuxt中引入JS脚本报错相关推荐

  1. python调用js文件报错_python - selenium 运行网页中js脚本报错,提示未定义

    问 题 问题1 selenium 运行网易中js脚本报错提示未定义 报错提示如下: driver.execute_script("javascript:amsInit(62800,30315 ...

  2. linux 简单脚本fi报错,shell脚本报错:[: =: unary operator expected

    shell脚本报错:"[: =: unary operator expected" 在匹配字符串相等时,我用了类似这样的语句: if [ $STATUS == "OK&q ...

  3. 运行shell脚本报错:“syntax error near unexpected token 的解决方法”

    运行shell脚本报错:"syntax error near unexpected token 的解决方法" 今天写了个Cshell脚本,运行报错syntax error near ...

  4. shell脚本报错:[: =: unary operator expected

    shell脚本报错:"[:=:unaryoperatorexpected" 在匹配字符串相等时,我用了类似这样的语句: if [ $STATUS == "OK" ...

  5. 删除docker registry镜像脚本报错No repositories directory found inside REGISTRY_DATA_DIR

    删除docker registry镜像脚本报错No repositories directory found inside REGISTRY_DATA_DIR registry使用delete_doc ...

  6. Windows下运行python脚本报错“ImportError: No Module named ...”的解决方法

    Windows下运行python脚本报错"ImportError: No Module named ..."的解决方法 参考文章: (1)Windows下运行python脚本报错& ...

  7. DBeaver执行.sql脚本报错:ERROR 1064 (42000) at line 1

    DBeaver执行.sql脚本报错,报错内容如下: ERROR 1064 (42000) at line 1: You have an error in your SQL syntax; check ...

  8. DBeaver执行sql脚本报错:CreateProcess error=193, %1 不是有效的 Win32 应用程序。

    DBeaver执行sql脚本报错:CreateProcess error=193, %1 不是有效的 Win32 应用程序. 如图: 定位发现DBeaver默认安装的mysql.exe大小为0字节! ...

  9. elementui的css文件没有引入_Python中引入模块详细介绍,使用模块的过程中注意事项教程...

    ​ 为此 Python 提供了一个办法,把这些定义存放在文件中,这个文件被称为模块. 模块是一个包含所有你定义的函数和变量的文件,其后缀名是.py.模块可以被别的程序引入,以使用该模块中的函数等功能. ...

最新文章

  1. python sklearn下载了但是引用失败_关于python:导入sklearn时出错
  2. Spark资源分配异常闪Bug
  3. model存储 swift_Swift语言IOS8开发战记10.Data Model
  4. 2.apache模块mod_rpaf ,让nginx代理后端的apache获取访客真是IP
  5. 公共端接正极还是负极_被称为下一代动力电池的固态电池,到底明年还是十年后才能量产?...
  6. curl, apt-get, apt
  7. 施耐德 m340 编程手册_施耐德PLC漏洞历险记
  8. 【持续更新】组合博弈题目集合
  9. 原则读书法:书这么多,读完就忘怎么办
  10. 计算机系统时间无法更改,电脑时间改不了怎么办|电脑时间无法修改的解决方法...
  11. 小波变换复习 (Review on Wavelet Transform)
  12. 在年轻人的兴趣场景里,TT语音母公司趣丸掘金语音社交
  13. 计算机论文展望未来,【计算机】总结过去,展望未来
  14. 什么是Microsoft Visual FoxPro?
  15. SpringBoot 动态添加定时任务
  16. 【QA单】柿饼派及柿饼M3模块相关QA(持续更新....)
  17. 小学二年级操行评语1
  18. POJ 1849 Two(树的直径+思维)
  19. rdo远程桌面管理快捷键在哪里?
  20. 阅读 ANDROID 源码的一些姿势

热门文章

  1. Ubantu20.04 安装搜狗输入法的详细步骤和遇到的问题
  2. 你日复一日的生活,就是一场漫长的修行
  3. 全网最全的Kali工具大全
  4. 【转】基于OAI-PMH的元数据搜索引擎的设计与实现
  5. 《实用VC编程之玩转控件》第6课:ComboBox下拉框控件
  6. python算式运算题目_python的四则运算练习
  7. 什么是BFC、IFC、GFC、FFC?
  8. prototype是原型对象,那__proto__又是什么呢,总不能是别名吧?
  9. 迅雷和小米这对好基友,究竟在密谋什么?
  10. 未来教师会被计算机代替,未来老师会被计算机所取代吗?Will The Teacher be Replaced by Computers in the Future-...