繁体   English   中英

我可以在瓶子(框架)中使用javascript吗?

[英]Can I use javascript with bottle (framework)?

我正在尝试使用bottle(python web framework)显示html页面。 该页面已嵌入javascript,但当我与Bottle一起使用时不会显示它。

我正在使用的JS是EditArea ,我可以按自己的意愿清理它,并将它放到一个html页面中,当我在chrome中打开该页面时,该页面可以正确显示。 但是当我使用瓶子时:

@route('/edit')
def edit():
    return template('editarea')


@route('/edit_area')
def edit_area():
    send_file('example1.html', root='path/to/file/')

并转到http:// localhost:8080 / edit或/ edit_area,我看到的页面没有任何精美的javascript功能。

最终,我想将其连接起来(EditArea是文本区域,我将使用它来接受希望能够运行的代码……但这是一个单独的问题……),但是现在所有这些都应该要做的是显示页面和javascript。 JS尽可能简单地放在html中。 这两个块使用不同的文件,但它们只是同一个html文件的副本,一个带有.html,另一个带有.tpl扩展名。

<title>EditArea - the code editor in a textarea</title> 
    <script language="Javascript" type="text/javascript"     src="../edit_area/edit_area_full.js"></script> 
    <script language="Javascript" type="text/javascript"> 
        // initialisation
        editAreaLoader.init({

...然后是所有JS代码(我没有写过)。

在启动我导入的服务器的文件中:路由,运行,调试,模板,请求,send_file和来自bottle的错误; 和sqlite3; 但是仅此而已。 还有什么我应该包括的吗?

我已经研究过瓶子的文档,以及其他一些地方,这是很明显的事实,没有人愿意写下来,或者是人们根本不这样做。

我正在看睡衣(它不断提出涉及“ python”和“ javascript”的搜索查询的不同组合),但看起来只是将python转换成javascript。 我不认为这就是我想要的B / C javascript已经是javascript ...

感谢您的任何见解。

您需要创建一个视图来提供静态文件,如Bottle文档中所述

我建议您将所有静态文件(css,js,图像)放在应用程序旁边的static文件夹中。 用于提供静态文件的视图如下所示:

from bottle import static_file    

@route('/static/:filename:')
def send_static(filename):
    return static_file(filename, root='./static/')

然后,您将这样包含.js文件(使用您当然会选择的路径):

<script type="text/javascript" src="/static/edit_area/edit_area.js"></script>

如果您使用的是Bottle中包含的名为SimpleTemplate的模板系统,则它不支持多行字符串,并且模板会被编译为可执行的Python字节码。 因此,很可能会剥离所有Javascript。

像在“ edit_area_full.js”文件中一样,在页面中包含javascript的唯一方法是通过脚本标记。

暂无
暂无

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

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