首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用Aurelia对话框插件与Aurelia?

如何使用Aurelia对话框插件与Aurelia?
EN

Stack Overflow用户
提问于 2015-09-05 21:23:00
回答 1查看 2.3K关注 0票数 4

我在用我的测试Aurelia应用程序设置Aurelia对话框插件(0.2.0)时遇到了问题。

不幸的是,详细说明如何实现这一点的README.MD文件有一些严重的漏洞。首先,它没有提到必须将aureliaDialog注入您的类中,所以我首先尝试了以下方法:

代码语言:javascript
复制
@inject(HttpClient, DialogService)
export class MyClass{
  constructor(http, dialogService) {
    this.http = http;
    this.dialogService = dialogService;
  }
  ...
}

我尝试使用以下方法调用该对话框:

代码语言:javascript
复制
this.dialogService.open({ viewModel: Prompt, model: 'Good or Bad?' })

上述结果导致以下错误:

代码语言:javascript
复制
Unhandled promise rejection ReferenceError: info is not defined
    at Container.invoke (http://127.0.0.1:9000/jspm_packages/github/aurelia/dependency-injection@0.10.0/aurelia-dependency-injection.js:401:30)
    at Array.<anonymous> (http://127.0.0.1:9000/jspm_packages/github/aurelia/dependency-injection@0.10.0/aurelia-dependency-injection.js:272:44)
    at Container.get (http://127.0.0.1:9000/jspm_packages/github/aurelia/dependency-injection@0.10.0/aurelia-dependency-injection.js:329:24)
    at http://127.0.0.1:9000/jspm_packages/github/aurelia/templating@0.15.1/aurelia-templating.js:3685:75
    at run (http://127.0.0.1:9000/jspm_packages/npm/core-js@0.9.18/modules/es6.promise.js:91:43)
    at http://127.0.0.1:9000/jspm_packages/npm/core-js@0.9.18/modules/es6.promise.js:105:11
    at module.exports (http://127.0.0.1:9000/jspm_packages/npm/core-js@0.9.18/modules/$.invoke.js:6:25)
    at queue.(anonymous function) (http://127.0.0.1:9000/jspm_packages/npm/core-js@0.9.18/modules/$.task.js:40:9)
    at Number.run (http://127.0.0.1:9000/jspm_packages/npm/core-js@0.9.18/modules/$.task.js:27:7)
    at listner (http://127.0.0.1:9000/jspm_packages/npm/core-js@0.9.18/modules/$.task.js:31:9) Unhandled promise rejection ReferenceError: info is not defined(…)(anonymous function) @ es6.promise.js:139module.exports @ $.invoke.js:6queue.(anonymous function) @ $.task.js:40run @ $.task.js:27listner @ $.task.js:31

接下来,我尝试将插件的配置添加到我的main.js文件中:

代码语言:javascript
复制
export function configure(aurelia) {
  aurelia.use
    .standardConfiguration()
    .developmentLogging()
    .plugin('aurelia-animator-css')
    .plugin('aurelia-dialog'); // <----- this is what I added

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

现在,我的应用程序根本没有启动,并在尝试(失败)启动时产生以下错误:

代码语言:javascript
复制
DEBUG [aurelia] Configured plugin aurelia-dialog. aurelia-logging-console.js:38 
DEBUG [templating] importing resources for undefined [] es6.promise.js:139 
  Unhandled promise rejection Error: Cannot read property 'querySelectorAll' of undefined(…)
  (anonymous function) @ es6.promise.js:139module.exports @ $.invoke.js:6queue.
  (anonymous function) @ $.task.js:40run @ $.task.js:27listner @ $.task.js:31

我现在不知道下一步该做什么。谢谢你对这个问题的任何见解。

我也希望aurelia对话框插件的维护者修改文档,以减少设置过程的痛苦。

谢谢,格雷格

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-09-07 18:07:00

最后,这个问题被证明是aurelia-对话框0.2.0中的一个bug。版本0.2.1修复了我自己无法解决的问题:https://github.com/aurelia/dialog/pull/24

我必须遵循的其他步骤仍然是必要的--您需要注入DialogService类并修改您的main.js文件以添加配置。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32417811

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档