0

私はLESSでTwitter Bootstrap を使用しています。アセット パイプラインを有効にする必要があります。しかし、アセットが有効になっている場合、CoffeeScript コードはブラウザーに 2 回含まれます。1 回目は application.js に、2 回目は posts.js に含まれます。

どうすればこれを修正できますか?

どちらのファイルにも次のものが含まれます。

$('.slider').each(function() {
    val = $(this).attr('val')
    $(this).slider({
      orientation: 'horizontal',
      range: "min",
      max:100
    });

そして、両方のファイルでエラーが発生しています: Uncaught TypeError: Object [object Object] has no method 'slider' from Chrome just after

$(this).slider({ 

しかし、ここで posts.js にアクセスしてコメントすると、エラーは発生せず、application.js のツイン関数は正常に機能します。

4

1 に答える 1

0

パイプラインは、application.js にこの行があるかどうかを気にしないようです

//= require_tree .

次のような別の行と一緒に:

*= require jquery.ui.slider

そして、jquery.ui.slider.js が "." の下にある場合は、それを 2 回インクルードするだけです。また、このファイルが既に含まれているかどうかは実際にはチェックしません。

于 2012-07-04T13:45:51.877 に答える