您如何使用VSCode Live-Server来检测更改?我似乎无法获得正确的设置

时间:2019-06-16 00:21:03

标签: flask visual-studio-code

我正在使用Ritwick Dey在VS Code中创建的最新版本5.6.1。 Powershell是我的默认外壳-Windows 10

我不知道如何使用设置来获取实时服务器来更新我放置在HTML / CSS / JS文件中的更改,而不使用liveServer.settings.host的默认设置(默认值为12.0.0.1)因为这是唯一实际显示我的代码更改的版本。

问题是当它设置为默认值并且我按GoLive按钮时,将呈现的唯一页面是在VSCode编辑器中打开的文件;如果它不是html页面,则通常不显示任何内容。如果我在标签中放置样式标签,它将更新更改并将其呈现在页面上。

"liveServer.settings.port": 5000中将端口设置为5000(这是Flask打开的端口),并将liveServer.settings.host的默认值更改为"liveServer.settings.host": "localhost"(我也设置了根路由到/的设置中),该页面将在根路径上打开,而不是我在代码编辑器BUT I have to do a hard reload中打开的,供浏览器检测更改的任何文件。

1)12.0.0.1和localhost在主机设置上有什么区别,并且在将浏览器设置为localhost时未检测到任何更改是否在浏览器中起主要作用?

2)是因为我更改了端口以匹配运行server.py文件时烧瓶打开的端口吗?

3)它与Python或用于运行服务器页面的编译器有关吗?

4)为什么页面使用Style标记内的Head标记并使用12.0.0.1作为主机设置来检测更改?当以这种方式运行时,为什么在URL中显示文件路径?网页如何准确地检测到更改?

5)我是否需要使用chrome扩展名并将端口保留在实时服务器中,并且仅使用扩展名对其进行更改以路由到我的服务器正在使用的端口?

`{
    "editor.multiCursorModifier": "ctrlCmd",
    "editor.formatOnPaste": true,
    "editor.cursorBlinking": "phase",
    "window.zoomLevel": 0,
    "breadcrumbs.enabled": true,
    "editor.renderWhitespace": "all",
    "files.autoSave": "afterDelay",
    "editor.suggestSelection": "first",
    "python.jediEnabled": true,
    "python.linting.pylintEnabled": false,
    "terminal.integrated.shell.windows": 

"C:\\windows\\System32\\WindowsPowerShell\\v1.0\\powershell.exe",
    "editor.fontSize": 20,
    "editor.highlightActiveIndentGuide": false,


    "liveServer.settings.CustomBrowser": "chrome",
    "liveServer.settings.port": 5000,
    "editor.wordWrap": "on",
    "liveServer.settings.donotVerifyTags": true,
    "liveServer.settings.root": "/",
    "liveServer.settings.host": "localhost",
    "liveServer.settings.donotShowInfoMsg": true,

    "workbench.iconTheme": "file-icons",
    "workbench.colorTheme": "Winter is Coming (Dark Blue - No Italics)"
}`

这是VSCode编辑器的JSON设置

`from flask import Flask, render_template
app = Flask(__name__)  

@app.route('/')         
def main_page():

    return render_template("index.html")

if __name__=="__main__":   
    app.run(debug=True)`    

我运行应用程序的基本服务器页面

`Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)`

这是服务器正常运行时cmd显示的内容

虽然它在默认情况下确实有效,但是它并不是一帆风顺的,并且如果模板中有Jinja2,它将在整个HTML页面上显示。

它应该检测到我在服务器打开时所做的任何更改,并且在导航到其他页面时仍可以正常工作。我希望能够逐页浏览,更改CSS值或添加一些jQuery,而不必每次都对我正在处理的每个页面进行硬重装。

0 个答案:

没有答案