1

问题:

  • 我正在使用 laravel 4 + basset 进行资产管理(OSX)。
  • 我已将 twitter 引导程序作为依赖项添加到我的作曲家。
  • 我想将较少的文件编译成一个集合:

    Basset::collection('TwitterBootstrap', function($collection)
    {
        // Collection definition.
        $collection->add('../vendor/twbs/bootstrap/less/bootstrap.less');
    })->apply('Less');
    
  • 然后我尝试构建集合:

    php artisan basset:build TwitterBootstrap
    
  • 引发错误:

    [Assetic\Exception\FilterException]
      An error occurred while running:
      '/usr/local/bin/node' '/private/var/folders/f4/xjby77695pbcgfdjfclfdqd40000gn/T/assetic_less5y7dnh'
    
      Error Output:
    
      module.js:340
          throw err;
                ^
      Error: Cannot find module 'less'
          at Function.Module._resolveFilename (module.js:338:15)
          at Function.Module._load (module.js:280:25)
          at Module.require (module.js:364:17)
          at require (module.js:380:17)
          at Object.<anonymous> (/private/var/folders/f4/xjby77695pbcgfdjfclfdqd40000gn/T/assetic_less5y7dnh:1:74)
          at Module._compile (module.js:456:26)
          at Object.Module._extensions..js (module.js:474:10)
          at Module.load (module.js:356:32)
          at Function.Module._load (module.js:312:12)
          at Function.Module.runMain (module.js:497:10)
    

我在全球范围内安装了 less - 我不确定为什么这会引发错误/要修复什么(我的路径?节点配置?资产配置?)

4

2 回答 2

1

我遇到了同样的问题,我通过使用 npm 安装 less 解决了这个问题:

npm install less

要在全局范围内使用 less,请不要在项目的根目录下运行“npm install less”。而是将符号链接添加到项目中的全局链接(/home/{user}/node_modules/less/):

ln -s /home/{user}/node_modules/less/ /path/to/project/node_modules/less
ln -s /home/{user}/node_modules/less/bin/lessc /path/to/project/node_modules/less/.bin/lessc
于 2014-03-13T08:25:45.893 回答
0

你是怎么少装的?

npm install less

参考:https ://npmjs.org/package/less

编辑...刚刚看到你的脚注。

另一种选择是通过 composer 安装 lessPHP 并使用LessphpFilter而不是LessFilter

于 2013-10-11T03:07:13.807 回答