0

我在尝试SaxonJS使用webpack. 据我所知,webpack视图SaxonJS只是另一个模块,而SaxonJS不是一个AMDCommonJS模块。相反,Big.jsSaxonJS依赖项)劫持了导出。我相信修复 Node.js 支持也会解决这个问题。

import * as SaxonJS from "./Saxon-JS/SaxonJS.js";
export class Transformer {

    public static transform(inputStr: string, sefFile: string, cb: Function) {
        // wrap the JSON in XML, as required by XSLT transform
        let wrappedJson = `<root xmlns="http://www.w3.org/2005/xpath-functions">${inputStr}</root>`;
        SaxonJS.transform({
            sourceText: wrappedJson,
            stylesheetLocation: `xslt/${sefFile}`,
            initialTemplate: "start",
            destination: "application"
        }, cb);
    };
}

请注意,这是一个网络场景;SaxonJS 正在被浏览器调用。

4

1 回答 1

2

很高兴看到人们如何尝试使用 Saxon-JS。我们 Saxonica 肯定有兴趣了解更多关于您正在尝试做什么以及如何做的信息。您正在尝试的集成当前无法正常工作也就不足为奇了。Saxon-JS 1 并没有真正构建为 JS 模块(例如,请注意其中包含 的副本Big.jsSaxonJS它不是模块依赖项)。

我们正在努力开发下一个主要版本 Saxon-JS 2.0,其中将包括 Node.js 版本(如您所知,Saxon-JS 1 仅适用于浏览器)。我们希望这次能够正确打包模块,以便像您这样的 JavaScript 开发人员确实可以SaxonJS按照您的期望集成模块。您的见解将非常受欢迎!

到目前为止,我们倾向于专注于使用 XSLT 和所提供的 IXSL 扩展构建独立的 Web 应用程序,但我们确实希望更好地了解用户能够/希望如何将 Saxon-JS 集成到更大的现有应用程序中。请您直接联系您的用例的更多详细信息吗?(例如,有关支持电子邮件地址,请参阅 Saxonica 网站上的联系人部分。)

于 2020-03-27T13:13:12.490 回答