我知道这似乎与这些重复: Try reinstalling `node-sass` on node 0.12? 和 how to uninstall npm modules in node js?
我们团队的环境如下:
<bitbucket git repo>
/sourcetree\
<local windows/mac machines>
\rsync to server/
<ubuntu 14.04 dev server>
<vhost for each dev via proxy pass to rel. port>
我们更喜欢通过package.json文件处理所有模块,更容易设置新的开发机器..只是一个简单的npm install
。
问题是这个..当node-sass
通过npm install
下拉到本地Windows机器然后同步到开发服务器时我们一直收到错误:
错误:找不到
libsass
绑定。请尝试重新安装node-sass
但是当在服务器上重建模块时,一切都很好:s。因为,在ubuntu服务器上运行:
npm rebuild node-sass
但后来obv。当来自开发机器的文件集同步到服务器时,这将擦除重建的文件,我们又重新出现错误。
当我们尝试在同步到服务器之前在本地计算机上运行重建时,这不能解决任何问题。
虽然我们可以在rsync命令中排除node-sass
,但这意味着我们在设置开发机器时会出现不一致。
答案 0 :(得分:0)
我找到了一个解决方法,而不是使用node-sass
我找到了node-sass-middleware
。
https://github.com/sass/node-sass-middleware
app.use('/css', sassMiddleware({
src: __dirname + '/sass',
dest: __dirname + '/public/css',
debug: true,
outputStyle: 'expanded' /*'compressed',*/
}));
但我仍然需要运行
npm rebuild node-sass
在rsync命令中添加一个--exclude标志,这会阻止节点中间件模块中的node-sass
目录弄乱npm rebuild实际执行的操作。