0
私はFlaskで始まっているので、非常に明白なものを見落としているかもしれません。その後、私はそれからオブジェクトをインスタンス化しようとFlask - 外部からオブジェクトをインスタンス化しても何もしないようです
<script src="{{ url_for('static', filename='Page.js') }}"></script>
ファイルJS:私はこれで私のjavscriptファイルをロードした
var Page = function(page) {
alert("init");
<some other things>
}
<and then some object methods Page.prototype.init_standard = function() {} etc>
:Page.jsで
<script>
var page = new Page("index");
</script>
を、私はこれを持っています
私はそれを期待していますが、警告は警告していません。また、HTMLページのインスタンシエーションの前にアラートを置くと、HTMLページのインスタンシエーション後に行にアラートを置くと警告が表示されますが、アラートは表示されません。私はこれがフラスコの問題かJavaScriptかどうかはわかりません - 私は両方でかなり新しいです。
EDIT:芽でこの可能性を摘み取るためには、JavaScriptファイルは、開発サーバに応じてロードされてきている、状態304
ブラウザの開発ツールを使用してデバッグを試してください。 'ctrl +たわごと+ i'。おそらくJavaScriptエラーがあります。エラーコンソールを確認してください。また、ブレークポイントを設定してコードをステップ実行することもできます。 – ccarton
私はそれをして、それは私にページが未定義であることを伝えます。なぜ私は分からない。私はこのように何十回もやったことがあり、それは動作します、フラスコでは決してありません。 Flaskは静的な読み込みで何か不思議なことをしますか?彼らはそれらを "実行"しないでアクセスできるようにしますか? – linus72982
デバッガを開いて、Page.jsをロードしようとしている '
私は、ブラウザのデバッガを見た後、それを考え出しました。それはページが定義されていないと述べた。いくつかの試行錯誤の後、私は{{フラスコの鋳型表記法をjavascriptファイルの中で使うことはできない、おそらくテンプレートとして読み込まれないので、そのような構文解析が起こらないことに気づいた。とにかく、{{}}リンクをhtmlテンプレートに移動し、javascriptの引数として渡してしまいました。
出典
2016-09-25 23:25:15 linus72982