未捕获参考错误:未定义氮气
Uncaught ReferenceError: Nitrogen is not defined
我正在Yaws驱动的站点上运行一个Nitrogen web框架。在过去的三年里,它在所有浏览器上都能正常工作。但最近的回邮可能无法在谷歌Chrome和Opera中做出响应。控制台中的错误为未捕获参考错误:未定义氮气。参考的错误行显示此
Nitrogen.$set_param('pageContext', 'j-oHyfcHcpNAZCWh7t6Y5EBqMbhta0E01Fl0jNMCOlr0YfeAEUGiprZ21Oqs1rDf6nutqrfw5LPfy9W1x8kk_k4-Z_adkaQy9Ijk66RY7hoi0kIbsf6RV34ZCJp8YXOu9SGNGe8tHLS-JbeiVzhzBIqfSUC5KXu1eLjVhzip_Z_dAxRWu3yzgG8pgCLvWqSIG8LbeG-C4kPZIrYQL9Y27cDdQHTLN1nbStbMekOw6Iviu-F19Jp5RW2ojIrkH2AscKqwIg');
我试图找出错误的原因,但没有成功,更让我困惑的是,它刚刚启动,并不是在每个浏览器上,也不是在每个计算终端上。
这就是我的模板看起来像的样子
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>[[[page:title()]]]</title>
<script src='/nitrogen/jquery.js' type='text/javascript' charset='utf-8'></script>
<script src='/nitrogen/jquery-ui.js' type='text/javascript' charset='utf-8'></script>
<script src='/nitrogen/livevalidation.js' type='text/javascript' charset='utf-8'></script>
<script src='/nitrogen/nitrogen.js' type='text/javascript' charset='utf-8'></script>
<script src='/nitrogen/bert.js' type='text/javascript' charset='utf-8'></script>
<link rel="stylesheet" href="/nitrogen/jquery-ui/jquery.ui.all.css" type="text/css" media="screen" charset="utf-8" />
<link rel="stylesheet" href="/nitrogen/nitrogen.css" />
<!-- For google analytics -->
<script>
...some google code here ....
</script>
</head>
<body ">
[[[page:body()]]]
<script>
[[[script]]]
</script>
</body>
</html>
请帮忙。
首先,我怀疑它是否相关,但你的标签中是否真的有一个游离的未闭合双引号("),或者这只是一个游离复制粘贴残余。这是我第一个注意到的问题。
其次,这个错误的原因有点难以捉摸,但这里有一些线索可以用来解开这个谜团:
- 错误"氮气未定义"可能仅由以下几种原因之一引起:
- 根本没有加载nitrogen.js脚本(提供静态内容失败)。你可以在CTRL+SHIFT+I中查看"网络"选项卡,看看nitrogen.js的响应是什么
- nitrogen.js脚本崩溃了,它会显示在js控制台中,但你没有提到它,所以可能不是这个
- 发生了调用
Nitrogen=undefined
的事件
话虽如此:
- 你能自己重现这个错误吗?还是你要处理用户报告
- 当回发失败时,它们是在页面加载和其他事情发生后失败,还是在页面加载时立即失败
这对我来说绝对是一个新的错误-这不是我遇到过的问题,除了,当有东西导致静态内容无法加载时。
我在使用氮气时也遇到了同样的问题,我将这些文件(jquery.js、jquery-ui.js…模板html中提到的文件)复制到目录"./site/static/negon"中,问题已经解决。这些js文件可以在"./lib/nitrogen_core/www"中找到,如果你在安装包中找不到它们,你可以下载氮气的binares版本。
相关文章:
- chrome.storage.sync未定义错误
- 对象为null或IE9中存在未定义错误
- 已定义变量出现未定义错误
- 'define' 在 RequireJS 和 Webapp Yo 生成器上未定义错误
- onreadystatechange未定义错误
- 在CoffeeScript文件上运行Jasmine测试时,对象未定义错误
- 如何修复JSlint报告的“foo未定义”错误
- 无法仅在活动服务器上读取未定义错误的属性“top”
- 主干无法读取属性'属性'主干视图中的未定义错误
- 如何克服javascript中的未定义错误
- require未定义错误
- 单击链接时出现函数未定义错误
- 函数为未定义错误
- 主干未定义错误
- 使用Javascript打印HTML:未定义错误
- 避免“无法读取”属性'获取'的未定义错误
- 未捕获类型错误的coffescription:无法读取属性'offsetWidth'的未定义错误
- ajax上get函数内部的未定义错误
- Javascript变量未定义错误
- AngularJS指令作用域未解析(“属性名称未定义”错误)