我正在尝试require()这个JSON文件。
{
"info" : function (request) {
var i = "<pre>";
i+= "current working directory: " + process.cwd() + "\n";
i+="request url: " + request.url + "\n";
i+= "</pre>";
return i;
}
}
使用此行
var render = require('./render.json');
但是我从以下JSON文件中得到一个异常:Unexpected token u
我做错了什么?
以下适用于浏览器。我期望,因为函数是一个对象。 nodejs docs建议JSON可以是一个模块:http://nodejs.org/api/modules.html#modules_file_modules
<html>
<head>
</head>
<body>
<script>
var a = {
"b" : function(msg){
alert(msg);
}
}
a.b("Hello");
</script>
</body>
</html>
答案 0 :(得分:4)
JSON纯粹是一种数据描述语言。每http://www.json.org,它是一种“轻量级数据交换格式”。 - 不是编程语言。
您无法在JSON中使用函数并使用节点。
{
"error": [
function (request) {
}
]
}
答案 1 :(得分:1)
我解决这个问题的方法是创建一个js文件而不是一个json文件:
config.js
exports.config = [
{
"foo": 12,
"bar": 10,
"baz": function(a){
console.dir(a);
}
}
]
然后在节点内:
config = require('./config.js').config;
var a = {
m: 'something',
o: 'somethingelses'
}
config[0].baz(a);