aurelia 中的自定义属性不起作用?

2024-01-14

我正在学习 Aurelia 的工作原理,并且正在尝试让一个简单的自定义属性正常工作。它所做的只是根据某些值的变化来改变 div 文本的颜色。

我有一个 div,其中包含:

    high.bind="changeColor"

在我的属性中我有:

import {inject, customAttribute} from 'aurelia-framework';

@customAttribute('high')
@inject(Element)
export class High {
    constructor(element) {
       this.element = element;
   }

   valueChanged(newValue){
   console.log(newValue);
   if (newValue) {
     this.element.classList.remove('highlight-yellow');
   } else {
     this.element.classList.add('highlight-blue');
  }
}

在我的视图模型中,我有:

import {high} from './highlightattribute'


export class Welcome{
  heading = 'Welcome to the Aurelia Navigation App!';
  firstName = 'John';
  lastName = 'Doe';

 get fullName(){
   return `${this.firstName} ${this.lastName}`;
 }

 get changeColor(){
  if (this.firstName == 'John'){
    return false;  
  }
  return true;
 }  
 welcome(){
   alert(`Welcome, ${this.fullName}!`);
 }
}

当我更改名字时,我没有看到在高级自定义属性类中触发 valueChanged 事件。


看起来您正在将高代码导入到视图模型而不是视图中。在 ViewModel 中删除这一行:

import {high} from './highlightattribute'

然后将此行添加到您的视图中:

<require from="./highlightattribute"></require>

接下来,在highlightattribute.js您要删除的文件highlight-yellow并添加highlight-blue,因此您可能想要添加和删除同一个类。我还注意到您的中缺少括号highlightattribute.js您发布的文件,但这可能只是在复制代码时丢失的。

让我知道这是否有助于解决问题。我已将包含您的代码的示例推送到此处:https://github.com/AshleyGrant/sculpture-navigation/tree/so-answer-20150416-01/src https://github.com/AshleyGrant/skeleton-navigation/tree/so-answer-20150416-01/src

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

aurelia 中的自定义属性不起作用? 的相关文章

  • 如何在 Aurelia 入门应用程序(导航应用程序)中使用 JQuery UI 组件

    我可以按照入门教程中提供的步骤运行 Aurelia 应用程序 他们在骨架应用程序中使用了引导导航栏 是否可以在 Aurelia 应用程序中使用 JQuery UI 组件 如果是 请解释一下如何实现这一目标 提前致谢 是的 这是可能的 我做了
  • Aurelia 语义下拉菜单

    我正在尝试在 Aurelia 中使用组合框 以便我的用户可以输入下拉列表并搜索内容 我试图合并 Semantic 创建的下拉菜单 但是当我在元素上调用下拉菜单时 它不会运行代码 因此它仍然是一个正常的下拉菜单 就像这里的状态示例一样 htt
  • 如何使用 vs2017rc 创建 aurelia typescript 项目

    我是 aurelia 的新手 我需要创建一个框架的原型项目 一开始 我打算使用 sculpture typescript aspnetcore 框架 但是当我尝试 vs2017rc 时 我发现它使用 csproj 作为默认格式 而 vs20
  • ES6 和 Promise 内的变量作用域

    不知道我在这里缺少什么 我需要得到的输出data into this contact 现在 我正在使用静态类变量 但必须这样做似乎很脏 export class contactEdit static t static class var c
  • Aurelia 动态绑定

    我创建了一个生成表格数据的自定义元素 出于充分的理由 这会生成实际的 HTML 并插入到 DOM 中 而无需使用模板 我需要将点击观察器附加到特定元素 以便我可以在自定义元素中运行函数来响应点击 如果使用模板 我会使用 click dele
  • Aurelia CLI 应用程序包自动更新变慢

    您好 我有一个在 Aurelia CLI 上运行的 Web 应用程序 从我读到的在文档中 http aurelia io hub html doc article aurelia framework latest the aurelia c
  • 使用 Webpack 在 Aurelia 中添加模块依赖项

    我刚刚开始使用Aurelia Webpack 骨架 https github com aurelia skeleton navigation tree master skeleton es2016 webpack并尝试简单地添加一个新的依赖
  • 如何使用 Aurelia 通过单击内部锚链接保持在同一页面上?

    我正在为一个项目制定样式指南 目前我希望在锚链接上有一个基本的点击行为 以便它们滚动到相应的 ID 举个例子 a href section a 向下滚动到 div div 在 Aurelia 中 默认行为是将链接视为路由 我无法使内部链接正
  • Aurelia:子路由器路由显示在 app.html 元素中的“主”导航栏和子视图中?

    我们想要一个侧边栏菜单和一个 主 区域 根据您的导航方式 侧边栏的菜单项将发生变化 并且新视图将加载到 主 区域 我创建了 app html
  • Aurelia 中 fetch() 的错误处理

    我有一个 API 其中包含服务器引发错误 状态 500 时出现的问题的有用描述 该描述作为响应文本的一部分 我的客户端代码使用 Aurelia 通过以下方式调用 apiaurelia fetch client使用通用方法进行调用 funct
  • 如何在 Aurelia 中“继承”可绑定属性?

    我正在使用 TypeScript 开发 Aurelia 应用程序 在此应用程序中 我定义了一组自定义元素 每个元素共享一组可绑定属性 这些属性被转换为 css 设置 如以下简化示例所示 import computedFrom bindabl
  • Aurelia 自定义元素:访问父方法

    我正在使用 Aurelia 的自定义元素重复一组条目 这是示例要点 https gist run id 38aee85444712 2f021bc05e1e0de25ae https gist run id 38aee854447122f0
  • 解决 VS 2017 中的“节点定义冲突”TS4090 错误

    我有一个可以构建并运行的 TypeScript 项目 但我有大量构建错误 这些错误似乎都源于一个错误 TS4090 TS 在 C projectpath node modules types node index d ts 和 C Micr
  • Aurelia Post 使用 http-fetch-client 生成选项请求

    我正在创建一个小型论坛 我们公司的人员可以使用 aurelia 为他们想要即时销售的商品或服务发布广告 我有一个广告页面列表 工作正常 每个广告的详细信息页面都工作正常 都使用来自 api 的 get 请求 然而 当有人想在广告上添加评论时
  • toastr.js 如何在 Aurelia 和 Typescript 中工作?

    我似乎无法让这些一起工作 我正在使用 Aurelia CLI 并以类似的方式成功地对其他库 如 select2 spin moment 和 numeric 进行了操作 但我似乎无法让 toastr 工作 这是我到目前为止所拥有的 首先我跑了
  • Aurelia 验证:对同一属性应用一些关于更改的规则和一些关于模糊的规则

    我有一个值的输入字段 该值应该正好有 5 位数字 我想在立即输入数字以外的字符 onChange 时显示错误 但仅在模糊时显示字符串长度不足的错误 我的规则目前看起来是这样的 ValidationRules ensure myInput m
  • 捆绑我的 aurelia 应用程序后,我收到:No PLATFORM.Loader 错误

    将简单的 aurelia 应用程序捆绑后jspm bundle sfx我收到以下错误 No PLATFORM Loader is defined and there is neither a System API ES6 or a Requ
  • Aurelia HttpClient 取消请求

    我正在尝试构建一个自动完成组件 并希望使其在键入时取消对服务器的未解析请求 我在 HttpClient 的文档中找不到与此相关的文档 它提到它是可以取消的 与获取不同 但没有提到如何取消 https aurelia io docs plug
  • Bootstrap 4 Beta 使用 Webpack 3.x 导入 Popper.js 会抛出 Popper 不是构造函数

    So Bootstrap 4 Beta出来了 耶 然而 Tether 已被取代Popper js用于工具提示 和其他功能 我看到控制台中抛出一个错误 速度足够快 足以建议我进行更改Popper js Bootstrap dropdown r
  • 强制执行 show.bind

    我有一个包含数据的表 当从另一个视图触发事件时 我希望视图检查 show bind 语句 问题是该事件没有更改当前视图中的任何数据 foo html tr p canBeRemoved p tr 我正在使用 EventAggregator

随机推荐

  • 一个 git 用于不同位置的多个文件夹

    我认为这个主题以前被问过 但我没有发现任何有趣的东西 我读了这个我可以将 git 文件夹存储在我想要跟踪的文件之外吗 https stackoverflow com questions 505467 can i store the git
  • “org.apache.cxf.jaxrs.bus.providers”不工作

    我正在使用 我想保留一些常见的东西 例如 JSON 提供程序 验证拦截器 使用 cxf 总线的异常处理 下面是我的应用程序上下文
  • AppleScript -> 激活不可编写脚本的应用程序的窗口

    我打开了2个 Finder 窗口A和B A在前面 B在下面 以下代码片段将B带到最前面 tell application Finder activate activate window 2 end tell 但对于不支持脚本的应用程序 刚才
  • 谷歌云机器学习错误

    请帮我 我无法解决这个问题 错误 gcloud beta ml models versions create FAILED PRECONDITION 字段 version deployment uri 错误 模型目录 gs valued a
  • PhoneGap 地理定位在 iOS10 中被阻止

    我的 Phonegap 应用程序利用 Cordova 3 8 webviews W3C Geolocation API 然而 自从从 iOS 9 x 升级到 iOS 10 测试版 以来 使用 navigator geolocation ge
  • Laravel 5.7 电子邮件验证抛出 403

    我在我正在开发的 Laravel 5 7 项目中实现了电子邮件验证 我收到了电子邮件 但每当我单击确认按钮甚至电子邮件中提供的 URL 时 都会收到 403 禁止错误 我已经搜索了多种解决方案 但未能找到解决此问题的方法 指向此错误的唯一合
  • 编辑一个单元格时,Swift tableview 会更改随机单元格的值

    我有一个很长的文本字段列表 所以我使用 tableView 这就是屏 幕的样子 https i stack imgur com GqpHN png 当我在其中一个单元格的文本字段中插入一些文本并向下滚动时 其他一些单元格会获得相同的文本字段
  • 将文本/标签添加到 D3 力定向图中的链接上

    我一直在研究修改后的力定向图 并且在将文本 标签添加到链接上时遇到一些问题 其中链接与节点未正确对齐 如何修复它 如何向 SVG 文本元素添加事件侦听器 添加 on dblclick function d 就是不行 这是代码片段
  • 如何动态计算 UILabel 高度[重复]

    这个问题在这里已经有答案了 我有以下代码 label numberOfLines 0 allows label to have as many lines as needed label text some long text label
  • 基于 SSL 的 CFHTTP

    我正在尝试使用 ColdFusion 通过 SSL 从服务器检索文件CFHTTP标记没有成功 我们的环境是使用服务器配置的Linux 使用的密钥库位于cf root runtime jre lib security cacerts 我从目标
  • 如何在Flask中实现基于角色的访问控制?

    是否有任何积极维护的插件可以帮助我创建具有基于角色的访问控制的 Flask 应用程序 例如管理员角色 会计角色 人力资源角色 Flask User看起来不错 但这些讨论表明维护者已经走了 Flask Login needs Flask Se
  • lambda 捕获的生命周期

    给出以下程序 include
  • 找不到分段用户的资源 - 应用程序令牌

    我能够进行身份验证并获取应用程序令牌以使用 Microsoft Graph API 我已设置所有委派和管理权限来访问用户 我还使用图形浏览器来验证我需要什么权限 https developer microsoft com en us gra
  • IIS 7.5 自定义 404 错误页面不适用于 Web 根索引/默认

    我使用 IIS 7 5 创建了一个自定义 404 和 403 14 错误页面 如果未找到静态文件 该页面将显示数据库中的内容 换句话说 如果我浏览到http mysite com test http mysite com test 如果在该
  • 当应用程序运行时,如何在android中以编程方式关闭通知?

    我正在尝试开发一个android我正在其中实现聊天功能的应用程序 但当我收到消息时 它会发出通知声音 用户使用应用程序时如何停止通知以编程方式 private void ChatNotifications String uid String
  • 引导多选搜索从数据库获取值

    我正在使用引导多选 https davidstutz github io bootstrap multiselect 在我的项目中 在搜索中我试图通过以下方式获取数据库值ajax请求 但它没有附加 这是我的代码 example gettin
  • 如何解析包含多个文档的 YAML 文件?

    这是我的解析代码 import yaml def yaml as python val Convert YAML to dict try return yaml load all val except yaml YAMLError as e
  • Locust:如何让 Locust 运行特定的时间

    官方的蝗虫文档 http docs locust io en latest 讲述如何编写无限期运行的简单 Locust 任务 无法找到如何运行持续特定时间的负载 以便测试在指定的时间间隔后自动停止 我不需要从网络界面获得它 命令行 代码选项
  • Git:执行提交后,显示上次推送到每个远程的日期

    我想要一个简单的 git 提交后操作 打印上次将更改推送到每个远程的日期 这样做的动机是简单地提醒您的存储库可能会变得不同步 或者很好地提醒您将更改备份到远程裸存储库 这是否存在 如果没有关于如何做到这一点的快速建议 如果它不存在 我最初的
  • aurelia 中的自定义属性不起作用?

    我正在学习 Aurelia 的工作原理 并且正在尝试让一个简单的自定义属性正常工作 它所做的只是根据某些值的变化来改变 div 文本的颜色 我有一个 div 其中包含 high bind changeColor 在我的属性中我有 impor