3

我们创建了一个插件,它的本地演示工作。

https://github.com/shaunluttin/aurelia-open-id-connect/tree/master/src

但是,将插件安装到另一个项目中会失败,并出现这两个错误,它们抱怨open-id-connect-user-block.htmlview/view-model 组件。

未捕获的类型错误:plugin.load 不是函数

未处理的拒绝错误:模块加载超时:template-registry-entry!aurelia-open-id-connect/open-id-connect-user-block.html_unnormalized2,template-registry-entry!aurelia-open-id-connect/open -id-connect-user-block.html,text!aurelia-open-id-connect/open-id-connect-user-block.html_unnormalized3,text!aurelia-open-id-connect/open-id-connect-user -block.html http://requirejs.org/docs/errors.html#timeout

我们尝试过的

configure在我们插件的函数中添加组件作为全局资源。

function configure(config: FrameworkConfiguration, callback: Function) {

    config.globalResources("./open-id-connect-user-block");

}

configure在消费应用程序的函数中添加插件。

export function configure(aurelia: Aurelia) {

  aurelia.use
    .standardConfiguration()
    .plugin("aurelia-open-id-connect", (callback) => callback(oidcConfig));

  aurelia.start().then(() => aurelia.setRoot());
}

aurelia.json在消费应用程序的文件中添加插件。

"bundles": [
  {
    "name": "open-id-bundle.js",
    "dependencies": [
      "oidc-client",
      {
        "name": "aurelia-open-id-connect", 
        "path": "../node_modules/aurelia-open-id-connect/dist/amd/es5/open-id-connect",
        "main": "index"
      }
    ]
  },

  // other bundles

]

requirejs/text插件设置为stub:false.

 "plugins": [
    {
      "name": "text",
      "extensions": [
        ".html",
        ".css"
      ],
      "stub":false 
    }

这会产生一个 404 新错误:

未处理的拒绝错误:src/../node_modules/aurelia-open-id-connect/dist/amd/es5/open-id-connect/open-id-connect-user-block.html HTTP 状态:404

我们读过的

我们在 GitHub 上看到了这个问题:安装普通的 Aurelia 插件,我做错了什么?

  • 2016 年 7 月 3 日,Aurelia CLI 不支持包含 HTML 模板的插件。
  • 7 月 17 日,它应该与 0.16.1 版本一起使用;我们使用的是 0.18.0,但它不起作用。
  • 7 月 28 日,动态要求文本需要stub:falsetext插件中设置aurelia.json > build.loader.plugins
4

0 回答 0