Node 卸载

JavaScript012

Node 卸载,第1张

sudo apt-get remove nodejs npm

进入 /usr/local/lib 删除所有 node 和 node_modules文件夹

进入 /usr/local/include 删除所有 node 和 node_modules 文件夹

检查 ~ 文件夹里面的"local" "lib" "include" 文件夹,然后删除里面的所有 "node" 和 "node_modules" 文件夹

使用以下命令查找

find ~/ -name node

find ~/ -name node_modules

使用如下命令删除文件

sudo rm /usr/local/bin/node

sudo rm -rf /usr/local/lib/node_modules

sudo rm -rf /usr/local/bin/npm

sudo rm -rf /usr/local/share/man/man1/node.1

sudo rm -rf /home/[homedir]/.npm

sudo rm -rf /usr/local/include/node/

sudo rm -rf /home/[homedir]/.node-*

删除完毕后,重启一下终端,输入 node -v 查看是否OK

安装Weex Toolkit方法很简单,如下命令:

$ npm install -g weex-toolkit

但是,提示了奇葩的错误,Google之不可解,遂只能干掉node,重新安装node

后来在搜索方法的过程中发现,或许是Mac系统升级导致了node的问题,才会让weex-toolkit无法成功安装

孰是孰非,暂不可定论

如果是通过brew安装的,则直接使用

brew uninstall node

若不是或者已经通过brew卸载了,则(删除之前,确认一下文件是否存在,并且是否为应该删除的文件)

然后通过

$ node

$ npm

检查一下,是否把应用卸载好了,ok了即可重新安装

重新使用brew安装node时,发生了一个更奇葩的事,brew坏了,只好重新安装brew,命令如下

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install )"

使用

brew install node

即可安装

安装途中,有可能提示,某某文件被占用,这时,可以把某某文件删掉(这是之前node卸载遗留的文件)

再者,可能提示,已经安装好了,但是没有link而已,这时可以看到link方法的提示

brew link node

但是,link时有可能说某某文件没有权限(我当时出现的是说tapset),sudo在brew上也是不可使用的了,这时需要

$ cd /usr/local/share/systemtap

$ chown -R tapset

再进行link就ok了

接下来,安装weex-toolkit就很顺利了

再接下来,还没完,gem和pod全挂了。。。

错误提示如下

dyld: Library not loaded: /usr/local/lib/libgmp.10.dylib

Referenced from: /Users/derek/.rvm/rubies/ruby-2.2.1/bin/ruby

Reason: image not found

则Google之,发现可以通过重新安装ruby来解决,原文中的方法如下:

$ ruby -v

dyld: Library not loaded: /usr/local/lib/libgmp.10.dylib

Referenced from: /Users/psoshnin/.rvm/rubies/ruby-2.1.3/bin/ruby

Reason: image not found

$ brew update &&brew upgrade

$ rvm reinstall 2.1.3 --disable-binary # 2.1.3是ruby版本,见ruby -v的错误提示,每个人的可能不同,比如我是2.2.1

$ ruby -v

ruby 2.1.3p242 (2014-09-19 revision 47630) [x86_64-darwin13.0]

尝试第一次,在install的时候,会出现

Error running '__rvm_rm_rf /Users/derek/.rvm/rubies/ruby-2.2.1',

showing last 15 lines of /Users/derek/.rvm/log/1492230416_ruby-2.2.1/remove.rubies.log

再次进行 brew update 后就正常了

至此,gem正常了,重新安装pod即可

brew:https://brew.sh/index_zh-cn.html

chown:http://www.cnblogs.com/peida/archive/2012/12/04/2800684.html

node.js中删除monogodb数组子文档使用$pull关键词。

1、Node.js是一个Javascript运行环境(runtime),发布于2009年5月,由Ryan Dahl开发,实质是对Chrome V8引擎进行了封装。Node.js对一些特殊用例进行优化,提供替代的API,使得V8在非浏览器环境下运行得更好。

2、Node.js可以在不新增额外线程的情况下,依然可以对任务进行并发处理 —— Node.js是单线程的。它通过事件轮询(event loop)来实现并发操作,对此,我们应该要充分利用这一点 —— 尽可能的避免阻塞操作,取而代之,多使用非阻塞操作。

实现代码如下:

var filter = {_id: suggestID}

var update = {$pull: {replies: {rid:opts.doc.rid}}}

return opts.dbs.csdb.collection("suggests").findOneAndUpdateAsync(filter, update, {upsert: false})