繁体   English   中英

从Flask服务我无法加载javascript文件

[英]Serving from Flask I cannot load javascript file

我正在尝试按照教程构建我的第一个单页应用程序,但无法加载本地javascript文件。

我的Python代码:

from flask import Flask, current_app


app = Flask(__name__, static_folder='')

@app.route('/')
def index():
    return current_app.send_static_file('index.html')

if __name__ == "__main__":
    app.run()

我的HTML:

<!DOCTYPE html>
<html ng-app="myApp">
<head>
    <title>My Page</title>
    <script
    src="https://code.jquery.com/jquery-3.4.0.min.js"
    integrity="sha256-BJeo0qm959uMBGb65z40ejJYGSgR7REI4+CW1fNKwOg="
    crossorigin="anonymous"></script>
    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/js/bootstrap.min.js"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.6.9/angular.min.js"></script>
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css">
</head>
<body>

    <div ng-controller="IndexController">
        <p>{{message}}</p>
    </div>


    <script src="./static/js/app.js"></script>
</body>
</html>

我的JavaScript:

var myApp = angular.module('myApp', []);

myApp.controller('IndexController', function($scope){
    $scope.message = 'binded ok';
});

文件夹结构为:

MyApp
 |-static
 | |-js
 |   |-app.js
 |-index.html
 |-server.py

一切正常,除了app.js可以给我:

请求网址: http:// localhost:5000 / static / js / app.js

状态码:404未找到

编辑:如果我直接使用浏览器app.js打开index.html则会加载。 所以我认为Flask在这里制造了一个问题。

尝试像这样引用您的JS文件:

<script src="{{ url_for('static', filename='static/js/app.js') }}"></script>

使用app = Flask(__name__, static_folder='', static_url_path='')创建您的App

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM