【问题标题】:Use npm wpapi as UI5 shim module使用 npm wpapi 作为 UI5 shim 模块
【发布时间】:2022-02-05 17:48:37
【问题描述】:

我使用 UI5 工具和“openui5-basic-template-app”样板进行了基本设置。

在这个应用程序中,我想与基于 Wordpress 的本地 REST API 进行通信。 所以 /wp-json 端点工作得很好,如果我在浏览器中定位这个端点,我会得到响应。

为了在我的 UI5 应用程序中导入它,我在 ui5.yaml 中添加了一个新 shim,它从 wpapi npm 模块(通过 npm install wpapi 安装)加载 wpapi.js。

specVersion: '2.6'
metadata:
  name: openui5-basic-template-app
type: application
framework:
  name: OpenUI5
  version: "1.96.2"
  libraries:
    - name: sap.m
    - name: sap.ui.core
    - name: sap.ui.layout
    - name: themelib_sap_horizon
---
specVersion: "2.6"
kind: extension
type: project-shim
metadata:
  name: thirdparty
shims:
  configurations:
    lodash: # name as defined in package.json
      specVersion: "2.6"
      type: module # Use module type
      metadata:
        name: lodash
      resources:
        configuration:
          paths:
            /resources/thirdparty/lodash/: "" # map root directory of lodash module
    wpapi: # name as defined in package.json
      specVersion: "2.6"
      type: module # Use module type
      metadata:
        name: wpapi
      resources:
        configuration:
          paths:
            /resources/thirdparty/wpapi/: "" # map root directory of wpapi module

我也在我的控制器中导入了这个。

sap.ui.define([
    "sap/ui/core/mvc/Controller",
    "../model/formatter",
    "thirdparty/lodash/lodash",
    "thirdparty/wpapi/wpapi",
], function(Controller, formatter) {
    "use strict";
...

但是启动服务器以检查它所说的结果

wpapi.js:17 Uncaught ReferenceError: require is not defined at wpapi.js:17:22"

因为 wpapi 通过“require()”加载其所有依赖项。

有解决办法吗?

【问题讨论】:

    标签: node.js wordpress rest npm sapui5


    【解决方案1】:

    只需定位到 wpapi npm 模块的子目录“/browser/wpapi.js”即可解决。

    sap.ui.define([
        "sap/ui/core/mvc/Controller",
        "../model/formatter",
        "thirdparty/lodash/lodash",
        "thirdparty/wpapi/browser/wpapi",
    ], function(Controller, formatter) {
        "use strict";
    ...
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-04-12
      • 1970-01-01
      • 2023-02-16
      • 2016-12-19
      • 1970-01-01
      • 1970-01-01
      • 2017-02-03
      • 2019-01-08
      相关资源
      最近更新 更多