Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/287.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 在Dash应用程序中调用本地CSS文件_Python_Plotly_Plotly Dash - Fatal编程技术网

Python 在Dash应用程序中调用本地CSS文件

Python 在Dash应用程序中调用本地CSS文件,python,plotly,plotly-dash,Python,Plotly,Plotly Dash,我试图在本地托管4个css文件时运行。我已经成功地使用了一个变通方法,并在Dash中本地托管了一个css文件,但无法同时调用所有4个css文件 这是当前的Vanguard dash应用程序,外部托管css文件: external_css = ["https://cdnjs.cloudflare.com/ajax/libs/normalize/7.0.0/normalize.min.css", "https://cdnjs.cloudflare.com/ajax/libs/skeleto

我试图在本地托管4个css文件时运行。我已经成功地使用了一个变通方法,并在Dash中本地托管了一个css文件,但无法同时调用所有4个css文件

这是当前的Vanguard dash应用程序,外部托管css文件:

external_css = 
["https://cdnjs.cloudflare.com/ajax/libs/normalize/7.0.0/normalize.min.css",    
"https://cdnjs.cloudflare.com/ajax/libs/skeleton/2.0.4/skeleton.min.css",
"//fonts.googleapis.com/css?family=Raleway:400,300,600",
"https://codepen.io/bcd/pen/KQrXdb.css",
"https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css"]

for css in external_css:
   app.css.append_css({"external_url": css})
我尝试在本地托管css文件:

app.scripts.config.serve_locally = True
app.css.config.serve_locally = True
....

app.layout = html.Div([
    html.Link(href='/assets/skeleton.min.css', rel='stylesheet'),
    html.Link(href='/assets/skelly.css', rel='stylesheet'),
    html.Link(href='/assets/normalize.min.css', rel='stylesheet'),
    html.Link(href='/assets/font.css', rel='stylesheet'),
    dcc.Location(id='url', refresh=False),
    html.Div(id='page-content')
])
....

@app.server.route('/assets/<path:path>')
def static_file(path):
    static_folder = os.path.join(os.getcwd(), 'assets')
    return send_from_directory(static_folder, path)
app.scripts.config.service\u locally=True
app.css.config.service_locally=True
....
app.layout=html.Div([
html.Link(href='/assets/skeleton.min.css',rel='stylesheet'),
html.Link(href='/assets/skelly.css',rel='stylesheet'),
html.Link(href='/assets/normalize.min.css',rel='stylesheet'),
html.Link(href='/assets/font.css',rel='stylesheet'),
dcc.Location(id='url',refresh=False),
html.Div(id='page-content')
])
....
@app.server.route(“/assets/”)
def静态_文件(路径):
static_folder=os.path.join(os.getcwd(),'assets')
从\u目录返回发送\u(静态\u文件夹,路径)

应用程序当前加载时没有任何样式。不知道为什么它连一个css文件都不会加载。

我目前也有同样的问题,所以如果你找到答案,请在这里添加它!。。。我没有解决方案,但以下是我所做的研究,以防您没有看到以下任何一项:


我在加载本地文件时遇到了同样的问题。问题出在@app.server.route中。我把它改成:

@app.server.route('/static/<path>')
@app.server.route(“/static/”)
它成功了

编辑:从Dash 0.22开始,您现在只需要将css文件放在资产文件夹中