所以我犯了一个大错误,就是将npm和node从版本3.10.10和6.10.2分别更新为5.6.0和9.3.0
现在我的应用程序无效,所以我在这里非常绝望。当我尝试运行它时,我收到以下错误:
/Users/me/Workspace/MyApp/node_modules/node-sass/lib/binding.js:13 抛出新错误(errors.unsupportedEnvironment()); ^
错误:Node Sass尚不支持您当前的环境:OS X 64位,运行时不受支持(59)
有关支持哪些环境的详细信息,请参阅: https://github.com/sass/node-sass/releases/tag/v4.5.3
我已查找错误并且找不到太多内容,除了删除node_modules
文件夹并执行npm install
。两者都不奏效。现在这给了我以下错误:
node-pre-gyp ERR!试图下载(403):https://mapbox-node-binary.s3.amazonaws.com/sqlite3/v3.1.8/node-v59-darwin-x64.tar.gz
node-pre-gyp ERR!未找到sqlite3@3.1.8和node@9.3.0(node-v59 ABI)的预构建二进制文件(使用node-gyp回退到源代码编译)
ACTION deps_sqlite3_gyp_action_before_build_target_unpack_sqlite_dep发布/ obj / gen / sqlite-autoconf-3150000 / sqlite3.c
TOUCH Release / obj.target / deps / action_before_build.stamp CC(目标)发布/ obj.target / sqlite3 / gen / sqlite-autoconf-3150000 / sqlite3.o
我不知道从哪里开始,但我没有绝望。到底是怎么回事?有什么我可以做的,或者我应该反转到以前版本的节点和npm?
答案 0 :(得分:1)
你需要运行npm rebuild
,因为Node-sass使用C ++插件和那个命令
在匹配的文件夹上运行
npm build
命令。这在安装新版本的节点时很有用,并且必须使用新的二进制文件重新编译所有C ++插件。
也许没有理由不更新node-sass to the current release 4.7.2。
查看另一个名为ncu
的便捷软件包,它可以帮助您批量升级package.json
。不要粗心地,你可能会产生不稳定性,但如果你有少量指定的依赖项,它就是一个方便的开始。