我想将saveMongoose模型可用的方法存根.这是一个示例模型:
/* model.js */
var mongoose = require('mongoose');
var userSchema = mongoose.Schema({
username: {
type: String,
required: true
}
});
var User = mongoose.model('User', userSchema);
module.exports = User;
Run Code Online (Sandbox Code Playgroud)
我有一些将调用该save方法的辅助函数.
/* utils.js */
var User = require('./model');
module.exports = function(req, res) {
var username = req.body.username;
var user = new User({ username: username });
user.save(function(err) {
if (err) return res.end();
return res.sendStatus(201);
});
};
Run Code Online (Sandbox Code Playgroud)
我想检查一下user.save使用单元测试在我的辅助函数中调用.
/* test.js */
var mongoose = require('mongoose');
var createUser = …Run Code Online (Sandbox Code Playgroud) 我最近遇到了一个 React 难题......
这工作正常:
const App = () => {
const renderFoo = () => (<p>Foo</p>)
return (<div>{renderFoo()}</div>)
}
Run Code Online (Sandbox Code Playgroud)
当然,你也可以Foo完全退出:
const Foo = () => (<p>Foo</p>)
const App = () => {
return (<div><Foo /></div>)
}
Run Code Online (Sandbox Code Playgroud)
但是,将Foo定义放在里面App会导致可怕的行为。
const App = () => {
const Foo = () => (<p>Foo</p>)
return (<div><Foo /></div>)
}
Run Code Online (Sandbox Code Playgroud)
对于后者,如果您使用表单执行此操作,那么每次进行更改时您都会失去焦点。(代码笔)
const Foo = () => (<p>Foo</p>)
const App = () => {
return (<div><Foo /></div>)
}
Run Code Online (Sandbox Code Playgroud)
所以我想知道:为什么会这样? …