我正在尝试实现一个功能,我可以按下按钮删除我的模型的某些属性。
我的模特是:
请求: 状态 购物者
我使用的是基于事件的结构:
这是前端
a.requests-deny(href='#', data-id=request.id) Deny request
这是我的后端
var Request = require('../../models/Request');
var ShopperRequests = Backbone.View.extend({
el: '.shoppers-requests',
events: {
'click .requests-deny' : 'requestDeny'
},
requestDeny: function(e){
e.preventDefault();
var target = $(e.currentTarget);
var requestId = target.data('id');
console.log(requestId);
Request.findById(requestId, function(err, request) {
console.log(request);
if (err) {
return console.log('oh no! error', err);
} else {
request.status = 'pending';
request.shopper = '';
request.save(function(err) { // <-- save it back to the database
if (err) {
console.log('oh no! could not be saved in db', err);
} else {
console.log(request);
}
});
}
});
},
在浏览器中查看控制台,我发现首先我无法使用&#34;要求&#34;因为&#34;它没有定义&#34;
Uncaught ReferenceError: require is not defined(anonymous function) @ shopper-f28ac0daf1d6a206b3172e4b9c670dd4.js:1
我正在考虑接受requestId并只更新数据库中的值,但显然这不起作用。 不知道这是否可行或我可以如何实现它?
答案 0 :(得分:0)
您没有在后端加载RequireJs
库。这就是为什么你得到require is not defined
。
如果您使用的是Node,请按以下方式添加:
npm install requirejs
或者,从here下载,然后使用脚本标记将其添加到项目中。