web-dev-qa-db-ja.com

ReferenceError:Drupalが定義されていません

私はモバイルサイトの開発サイトから設定を移動して、プロダクションサイトで作業しています。しかし、上記のエラーが発生します。このエラーの原因はわかりません。私がjqueryモバイル環境を変更するテーマも関係ありません。すべてのモジュールを確認しましたが、同じバージョンのようです。私が見ることができる唯一の違いは、開発サイトではブロックキャッシュのチェックを解除/チェックできることです。本番環境ではこれを行うことはできません。

2
Cameron

JavaScriptファイルの順序に関する問題のように聞こえます。 Drupalは

/misc/Drupal.js

var Drupal = Drupal || { 'settings': {}, 'behaviors': {}, 'locale': {} };

変数が要求される前に、Drupal.jsがHTMLソースに追加されていることを確認してください。

9
David Thomas

ダンプからdrupal 7 Webサイトをインストールするときに同じ問題が発生しました。

元のdefaultフォルダーは、サイズ管理のために空で提供されていました。 settings.phpファイルとfilesディレクトリをプッシュした後、Drupal is not definedエラーが発生しました。

元々、開発者はdefaultフォルダー内に他の2つのフォルダーを持っていました。

このフォルダを復元すると、エラーが解決されました。

1
user73388

drupal 8では、core/drupalをモジュールの依存関係として追加する必要があるかもしれません。

your-custom-module:
  version: 1.x
  js:
    js/your_custom_module.js: {}
  dependencies:
    - core/drupal
    - core/drupalSettings
1
wranvaud

@David Thomasが述べたように、これはファイルmisc/drupal.jsの問題です。 Drupalデフォルトでは、ファイルは正しい順序に配置されます。そのため、ほとんどの場合、ファイルはWebサーバーからアクセスできません。そのURLを作成し、ブラウザーでアクセスしてみてください。

私の場合、これはPHP-FPM(mod_suphpと同様のユーザー権限で実行されます)を使用していて、静的ファイル( `png、jpg、css、jsなど)が引き続きApache2によって提供されていることを忘れていたためです私の場合。したがって、これらは世界中で読み取り可能である必要がありました。

0
tanius