【问题标题】:What is state Id that xtext uses while saving the resourcextext 在保存资源时使用的状态 ID 是什么
【发布时间】:2017-07-07 09:07:30
【问题描述】:

我在我的 Angular 应用程序中使用 iframe 托管 xtext 的 orion 编辑器。我需要将从我的角度应用程序端写入的内容保存到后端(Java 应用程序)。任何人都可以帮助我了解我应该从我的角度进行哪些 API 调用或方法,以便我可以保存在编辑器中编写的内容。

我已经做了什么:
1 .我尝试从我的角度侧从 iframe 中提取内容,但如此提取的数据是部分的,因为它只提取一次只能通过 iframe 看到的数据,而不是必须滚动才能查看的全部内容。 2.我尝试进行 xtext 在保存时进行的“保存”API 调用,但它需要一些 stateId 作为其请求正文。我需要了解这个状态 ID 是什么以及它是如何评估的?

我正在通过我的 Angular 应用程序进行此调用

        _this.saveEditor = function(args) {
        var params = {
            requiredStateId: args.stateId
        }
        _this.saveUrl = XTEXT_URL + '/save?resource=' + args.resourceId;
        return $http({
            method: 'POST',
            url: _this.saveUrl,
            data: params
        });
    };

我的请求正文是:

{"requiredStateId":"-80000000"}

这是我通过先前的加载 api 调用获得的状态 ID,该调用在其响应中返回状态 ID。

【问题讨论】:

  • "我已经做了什么" => 你能添加一些代码吗
  • 只是从客户端调用save到服务器不起作用? github.com/eclipse/xtext-web/blob/master/…
  • @christianDietrich 没有工作
  • 你能提供一个最小的例子吗?你试过调试后端吗
  • @christianDietrich 我们打算使用相同的保存 API,但如何从 Angular 客户端应用程序调用它?

标签: javascript angularjs iframe xtext eclipse-orion


【解决方案1】:

也许这个剪断可以帮助你,我不知道你怎么能把它和你的东西联系起来

require(["orion/code_edit/built-codeEdit-amd"], function() {
        require(["xtext/xtext-orion"], function(xtext) {
            var editors = xtext.createEditor({
                baseUrl: baseUrl,
                syntaxDefinition: "xtext-resources/generated/mydsl-syntax"
            }).done(function(editorViewer) {
                $("#save-button").click(function() {
                    editorViewer.xtextServices.saveResource();
                });
                $("#log-button").click(function() {
                    console.log(editorViewer.xtextServices.editorContext.getServerState());
                });
            });

        });
    });

我在哪里做你可以查询的简单日志,然后手动调用保存。

【讨论】:

    猜你喜欢
    • 2018-11-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多