Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/75.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
Javascript Python后端与JS前端_Javascript_Jquery_Python_Bottle - Fatal编程技术网

Javascript Python后端与JS前端

Javascript Python后端与JS前端,javascript,jquery,python,bottle,Javascript,Jquery,Python,Bottle,我正在创建一个Python支持的web框架,旨在尽可能少地使用javascript。需要做一些轻量级的事情,比如将事件传递给Python代码。我想这应该是jQuery解决方案,某种程度上ping了一种观察者对象(?) 我已经发现了一些创建纯Python接口的努力,比如,但仍然不知道如何在代码中重新实现它 比如说我做了一个这样的课程: class WebView(): def __init__(self, template, **callbacks): """

我正在创建一个Python支持的web框架,旨在尽可能少地使用javascript。需要做一些轻量级的事情,比如将事件传递给Python代码。我想这应该是jQuery解决方案,某种程度上ping了一种观察者对象(?)

我已经发现了一些创建纯Python接口的努力,比如,但仍然不知道如何在代码中重新实现它

比如说我做了一个这样的课程:

class WebView():
    def __init__(self, template, **callbacks):
        """
        Callbacks are dict, {'object': callback}
        """
        self.template = template
        self.customJS = None
        for obj, call in callbacks:
            self.setCallback(obj, call)

    def __call__():
        """
        Here I return template
        Assume {{customJS}} record in template, to be simple
        """
        return bottle.template(self.template, customJS = self.customJS)

    def setCallback(self, obj, call):
        """
        Build custom js to insert 
        """
        self.customJS += ('<script ....%s ... %s' % (obj, call))
class WebView():
定义初始化(self、模板、**回调):
"""
回调是dict,{'object':callback}
"""
self.template=模板
self.customJS=None
对于obj,调用回调:
self.setCallback(obj,call)
def___;调用_;():
"""
这里我返回模板
假设模板中的{{customJS}}记录很简单
"""
返回瓶子.template(self.template,customJS=self.customJS)
def setCallback(自身、对象、调用):
"""
构建要插入的自定义js
"""

self.customJS+=(“重要的是,python web框架不需要javascript。使用flask或django提供页面时,如果没有一行JS,就可以了

这些页面将是非常静态的,只有一些表单,但会工作得很好


现在,如果你想拥有更多的动态内容和交互,你可能需要JS,并使用JS在事件上异步调用你的python后端。但为了正确地这样做,你应该从学习JS开始。

你也可以用JS来做,但我认为这不是最好的方法。你可以在python端使用库,等等在网站上,您只需在每个按钮单击回调时发送一条websocket消息。

在开始这样一个史诗般的恩德沃之前,您需要对客户端和服务器技术如何协同工作进行更多的研究。可以从以下方面开始: