9

私のブランチ テンプレートは、すべてのコードを にコンパイルしapp.js、すべてのサード パーティの依存関係を にコンパイルしますvendor.js(かなり標準的なアプローチ)。CSSで同じことをしたいのですが、以前は機能していましたが、Bowerを使用するようになったときに何かが機能しなくなり、次のエラーが発生しました:

エラー: config /path-to-root/config.coffee を読み込めませんでした。SyntaxError:予期しない { Object.exports.loadConfig で (/usr/local/share/npm/lib/node_modules/brunch/lib/helpers.js:448:15)

次のような構成ファイル (config.cofee) から:

files:
    javascripts:
      joinTo: 
        'javascripts/app.js': /^app/
        'javascripts/vendor.js': /^(bower_components|vendor)/
        'test/javascripts/test-vendor.js': /^test(\/|\\)(?=vendor)/

    stylesheets:
      joinTo:
        'stylesheets/app.css': /^app/
        'stylesheets/vendor.css': /^(bower_components|vendor)/

代わりに、スタイルシートの 2 行を削除して、この 1 行をその場所に配置すると、エラーなしで動作します。

'stylesheets/vendor.css': /^(app|bower_components|vendor)/

私はこれと一緒に暮らしてきましたが、これがますます多くの問題を引き起こしているので、整理したいと思います. どんな助けでも大歓迎です。

質問が発生した場合...私が使用しているブランチのバージョンは1.7.6です。

4

3 に答える 3

4

私は困惑していますが、特殊文字がファイルに入った可能性があるというポールの提案はありそうに思えます。以前は機能していなかったものと同じように見える構成で動作するようになりました。完全な構成ファイルは次のとおりです。

sysPath = require 'path'

exports.config =
  # See http://brunch.io/#documentation for documentation.
  files:
    javascripts:
      joinTo:
        'javascripts/app.js': /^app/
        'javascripts/vendor.js': /^(bower_components|vendor)/
        'test/javascripts/test-vendor.js': /^test(\/|\\)(?=vendor)/

    stylesheets:
      joinTo: 
        'stylesheets/app.css': /^app/
        'stylesheets/vendor.css': /^(bower_components|vendor)/

    templates:
      precompile: true
      root: 'templates'
      joinTo: 'javascripts/app.js' : /^app/

      modules:
        addSourceURLs: true

  # allow _ prefixed templates so partials work
  conventions:
    ignored: (path) ->
      startsWith = (string, substring) ->
        string.indexOf(substring, 0) is 0
      sep = sysPath.sep
      if path.indexOf("app#{sep}templates#{sep}") is 0
        false
      else
        startsWith sysPath.basename(path), '_'
于 2013-09-24T14:38:39.070 に答える
2

かなり奇妙ですが、同じケースで次のことを行う必要がありました(最後に / を追加)

stylesheets: {
    joinTo: {
        'css/vendor.css': /^(vendor|bower_components)\//,
        'css/styles.css': /^app\/css\//
    }
}
于 2013-09-24T09:10:34.863 に答える
1

私はケンと同じ問題を抱えていました。私にとってそれを解決したのは、問題のある行をconfig.coffeeファイルから削除し、最初から再入力するだけです。これにより、隠し文字が存在しないことが保証され、スクリプトが再び実行されます。

于 2014-07-19T11:10:15.893 に答える