首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >对话框BindingLanguage必须实现inspectTextContent()

对话框BindingLanguage必须实现inspectTextContent()
EN

Stack Overflow用户
提问于 2018-08-31 10:52:18
回答 1查看 393关注 0票数 0

我安装了aurelia对话框npm install aurelia-dialog --save。它安装了"version": "2.0.0-rc.3"版本。我修改了main.ts,在配置函数中将.plugin(PLATFORM.moduleName('aurelia-dialog')) ;添加到aurelia.use中。我在aurelia.json中添加了aurelia.json(所以,我不确定它是否有用)。

下面是一个用于调用对话框的模块:

代码语言:javascript
复制
import {DialogService} from 'aurelia-dialog';
import {Rapport} from '../modal/rapport';

@inject(CssAnimator,
EventAggregator,
Parameters,
Configurator,
NewInstance.of(ValidationController),
Validator,
Router,
NewInstance.of(HttpClient),
DialogService
)
export class Import {
constructor(private cssAnim: CssAnimator,
    private ea: EventAggregator,
    private params: Parameters,
    private conf: Configurator,
    private controller: ValidationController,
    private validator: Validator,
    private router: Router,
    private httpClient: HttpClient,
    private dialogService: DialogService) {
...
}
...
test(){
    let testResponse='{"FATAL":["1 ca craint !", "2","3","4"],"WARN":["w1", "w2","w3"],"INFO":["i1","i2","i3"]}';
    this.dialogService.open({
                viewModel: Rapport,
                model:testResponse
            }).whenClosed(reponse => {
                console.log("Rapport lu :) + ["+reponse.output+"]");
            });
}

我的亲切感:

代码语言:javascript
复制
import {inject} from 'aurelia-framework';
import {DialogController} from 'aurelia-dialog';

@inject(DialogController)
export class Rapport {
    fatals: string[]=[];
    warns: string[]=[];
    infos: string[]=[];

    constructor(private controller: DialogController) {
        controller.settings.centerHorizontalOnly = true;
    }

    activate(rapportJson) {
        let rapport = JSON.parse(rapportJson);
        this.fatals = rapport.FATAL;
        console.log("fatals :"+this.fatals);
        this.warns = rapport.WARN;
        console.log("warns :"+this.warns);
        this.infos = rapport.INFO;
        console.log("infos :"+this.infos);
    }
}

我的看法是:

代码语言:javascript
复制
<template> 
<!--    <ux-dialog>  -->
<!--        <ux-dialog-body> -->
<!--            <h2>Erreurs fatales : </h2> -->
<!--            <ul> -->
<!--            <li repeat.for="f of fatals"><span>${f}</span></li> -->
<!--            </ul> -->
<!--            <h2>Avertissements : </h2> -->
<!--            <ul> -->
<!--            <li repeat.for="w of warns"><span>${w}</span></li> -->
<!--            </ul> -->
<!--            <h2>Pour information : </h2> -->
<!--            <ul> -->
<!--            <li repeat.for="i of infos"><span>${i}</span></li> -->
<!--            </ul> -->
<!--        </ux-dialog-body>  -->
<!--        <ux-dialog-footer> -->
<!--            <button class="btn btn-success"   click.delegate="controller.ok()" >Ok</button> -->
<!--        </ux-dialog-footer>  -->
<!--    </ux-dialog>  -->
</template>

注释中的所有内容,但如果没有这些,它的工作方式就不一样了:

当我单击按钮测试(请参阅类导入)时,没有任何附加内容,并且我有以下跟踪:

死亡人数:1人,2,3,4人:27:9 警告:w1,w2,w3关系:29:9 信息:i1,i2,i3关系:31:9 调试模板导入模态/rapport.html数组aurelia的资源-日志控制台:20:6 未处理的拒绝错误: BindingLanguage必须实现inspectTextContent()。 mi@webpack-internal:///./node_modules/aurelia-dialog/node_modules/aurelia-templating/dist/native-modules/aurelia-templating.js:892:9 inspectTextContent@webpack-internal:///./node_modules/aurelia-dialog/node_modules/aurelia-templating/dist/native-modules/aurelia-templating.js:909:5 _compileNode@webpack-internal:///./node_modules/aurelia-dialog/node_modules/aurelia-templating/dist/native-modules/aurelia_compileNode@webpack-internal:///./node_modules/aurelia-dialog/node_modules/aurelia-templating/dist/native-modules/aurelia-templating.js:2844:26 compile@webpack-internal:///./node_modules/aurelia-dialog/node_modules/aurelia-templating/dist/native-modules/aurelia-templating.js:2791:5 loadViewFactory/上一次活动: loadViewFactory/<@webpack-internal:///./node_modules/aurelia-dialog/node_modules/aurelia-templating/dist/native-modules/aurelia-templating.js:3511:31 上一次活动: loadViewFactory@webpack-internal:///./node_modules/aurelia-dialog/node_modules/aurelia-templating/dist/native-modules/aurelia-templating.js:3493:12 loadViewFactory@webpack-internal:///./node_modules/aurelia-dialog/node_modules/aurelia-templating/dist/native-modules/aurelia-templating.js:617:12 load@webpack-internal:///./node_modules/aurelia-dialog/node_modules/aurelia-templating/dist/native-modules/aurelia-templating.js:4274:14 createController/<@webpack-internal:///./node_modules/aurelia-dialog/node_modules/aurelia-templating/dist/native-modules/aurelia-templating.js:4883:14 上一次活动: createController@webpack-internal:///./node_modules/aurelia-dialog/node_modules/aurelia-templating/dist/native-modules/aurelia-templating.js:4871:12 _createControllerAndSwap@webpack-internal:///./node_modules/aurelia-dialog/node_modules/aurelia-templating/dist/native-modules/aurelia-templating.js:4843:12 compose@webpack-internal:///./node_modules/aurelia-dialog/node_modules/aurelia-templating/dist/native-modules/aureliaDialogService.prototype.composeAndShowDialog@webpack-internal:///./node_modules/aurelia-dialog/dist/native-modules/dialog-service.js:79:16 DialogService.prototype.open/openResult<@webpack-internal:///./node_modules/aurelia-dialog/dist/native-modules/dialog-service.js:141:20 -templating.js:4945:14 上一次活动: DialogService.prototype.open@webpack-internal:///./node_modules/aurelia- dialog/dist/native-modules/dialog-service.js:131:26 Import.prototype.test@webpack-internal:///import/import:279:9 evaluate@webpack-internal:///./node_modules/aurelia-binding/dist/native-modules/aurelia-binding.js:1578:14 callSource@webpack-internal:///./node_modules/aurelia-binding/dist/native-modules/aurelia-binding.js:5269:18 handleEvent@webpack-internal:///./node_modules/aurelia-binding/dist/native-modules/aurelia-binding.js:5278:5 handleDelegatedEvent@webpack-internal:///./node_modules/aurelia-binding/dist/native-modules/aurelia-binding.js:3353:11

怎么了?我在奥雷利亚博客或其他地方找不到任何答案..。

EN

回答 1

Stack Overflow用户

发布于 2018-08-31 13:57:40

你知道吗?

我制作了npm install -g aurelia-cli;它更新了Aurelia。

在另一个目录中,我创建了一个au new,然后安装了我需要的所有包(包括Aurelia-对话框)。复制/粘贴以前位置的所有src文件,然后.很管用!!

所以,如果你有问题的奥雷利亚-对话框(和其他插件,我想),确保奥雷利亚更新到上一个版本。希望我失去的时间能帮助别人不要浪费时间..。

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

https://stackoverflow.com/questions/52113894

复制
相关文章

相似问题

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