最近是node的初体验。都说万事开头难,刚学习node就碰到许许多多的小问题,明明跟着视频敲的代码,但不知道怎么我就出现了错误。好再功夫不负有心人,我都找到了解决办法。因此,我将这些我遇到的小错误总结起来,希望能帮到和我一样的小迷糊哈哈哈!
1. 错误:Did you forget to signal async completion?
代码
const gulp = require('gulp');
gulp.task('first', () => {
console.log('Hello World!');
})
出错提示
解决方法1
gulp.task('testGulp', async() => {
await console.log('Hello World!');
});
解决方法2
gulp.task('testGulp', done => {
console.log('Hello World!');
done();
});
原因请查看官方网站的:异步执行
2. 错误:remove the existing file and try again
- 这个错误呢,它的解决办法就是删除某文件,再重新输入命令。
- 删除哪个文件了,这个错误后面会跟着一个路径,把该路径下的文件删除,就ok的了!!!!
3. 错误:task function must be specified
代码
gulp.task('default', ['minify', 'cssmin', 'jsmin', 'copy'])
错误
解决办法
在task内添加gulp.series( )和function( ){ }两个参数
gulp.task('default',
gulp.series(['minify', 'cssmin', 'jsmin', 'copy']),
function() {
})
4.epress-session的配置提示
错误提示
express-session deprecated undefined resave option; provide resave option
express-session deprecated undefined saveUninitialized option; provide saveUninitialized option
解决办法
增加resave和 deprecated 的配置
app.use(session({
resave: false,
saveUninitialized: true
}));
5.moongose的错误提示
错误提示
DeprecationWarning: collection.ensureIndex is deprecated. Use createIndexes instead.
解决办法
mongoose.set('useCreateIndex', true)
5.joi的验证错误
错误提示
Joi.validate is a not function
解决办法
解决方法先删除了最新版的joi组件好像是17.几版本,把joi插件回滚到旧的版本如14.3.1验证就通过了。
//卸载当前目录下的joi组件
npm uninstall joi
//关闭终端窗口,重新打开终端窗口,安装指定的版本的joi
npm install joi@14.3.1
5.关于bcrypt的错误
第三方模块bcrypt,必需依赖三个条件:
- python 2.x,因此要先下载
- npm install --global --production windows-bulid-tools
- npm install -g node-gyp
错误提示
安装node-gyp时,我出现的错误就是
if not defined npm_config_node_gyp(后面出现一个路径的东西)
解决办法
npm config set node_gyp "路径复制进来"
在只会学习过程中,如果遇到一些千奇百怪的错误,我会继续分享出来~
(但还是希望,别再那么多错误出现了,我的心态hold不住这么多bug)