Ember 的 registerBoundHelper 和车把块

2024-01-03

所以我已经从here https://github.com/danharper/Handlebars-Helpers并修改它,以便它使用 registerBoundHelper 通过 Ember 注册它的助手

我这样做的原因是因为我基本上需要一个基于车把的“switch”语句。我的车把的最终结果如下:

{{#is MyProperty 1}}
    ...Do something here...
{{/is}}
{{#is MyProperty 2}}
    ...Do something here...
{{/is}}
{{#is MyProperty 3}}
    ...Do something here...
{{/is}}
{{#is MyProperty 4}}
    ...Do something here...
{{/is}}

is 语句只是在 'MyProperty' 之间进行简单的比较value和一个常数。

如果我不使用“registerBoundHelper”,MyProperty 将作为字符串文字“MyProperty”传递,而不是它value.

Now: 当我实际运行它时,这个逻辑似乎有效

问题是 Ember 抛出以下错误:

registerBoundHelper-generated helpers do not support use with Handlebars blocks.

我是否应该忽略此错误并继续,因为它似乎确实有效?或者我应该尝试重新设计逻辑以不使用块?


你不应该忽略它,因为它不受支持,如果MyProperty如果在渲染发生后进行更改,它将中断。

ember 车把不支持条件助手(导致我们很多人死亡)。原因是核心团队希望将此逻辑作为计算属性而不是模板中的逻辑。

IE

控制器

App.IndexController = Em.ObjectController.extend({
  isPropertyOne: Em.computed.equal('myProperty', '1')
});

Template

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

Ember 的 registerBoundHelper 和车把块 的相关文章

  • Google Closure 和生成的 getter/setter

    我正在尝试让 KineticJS 与 Google Closure Compiler 一起使用 然而 KineticJS 根据变量的名称生成它的 getter 和 setter 像这样的事情 add getter and setter me
  • 范围滑块 javascript 以小时和分钟为单位

    我试图分别以小时和分钟为单位显示滑块的值 我对 JS 还很陌生 并且仍在尝试了解它是如何工作的 到目前为止 我所拥有的是一个工作滑块 其最大值为 1440 24 小时内的分钟 在 JS 中 我尝试将其划分为小时和分钟 并使用 innerHt
  • 为什么 Bootstrap 按钮下拉菜单在 iOS 上不起作用?

    看起来甚至连引导演示在这里 http twitter github com bootstrap components html buttonDropdowns不适用于 iOS 您似乎无法在 iPhone 或 iPad 上从中选择项目 有解决
  • iPhone Web 应用程序禁用缓存

    我使用 PHP 构建了一个 iPhone 网络应用程序 主 也是唯一 页面包括苹果移动网络应用程序支持 and 苹果触摸全屏元标记 以便在添加到主屏幕后可以全屏运行 然而 似乎每次我从主屏幕启动应用程序时 都会使用页面的缓存版本而不是刷新页
  • JavaScript:所有标准内置对象实际上都是构造函数吗?

    我最近一直在研究 JavaScript 在花了几个月的时间之后 我仍然对一些内部结构感到困惑 具体来说 我试图理解所谓的标准内置对象 https developer mozilla org en US docs Web JavaScript
  • GraphQL:从对象构建查询参数

    如果我有一个对象 where publishedAt lt 2018 01 01 如何将其转换为适合查询参数的字符串 articles where publishedAt lt 2018 01 01 这看起来是一个有趣的库 我建议检查一下
  • 如何告诉 Sonar 使用我的可靠报告来获取单元测试结果

    我们有一个 Jenkins 作业 其中包含一堆 javascript 文件 我们通过 grunt 构建项目 并在构建结束时运行 JSCover 来运行单元测试并收集代码覆盖率 这一切都有效 我们得到了一个不错的 LCOV 文件 并且在 ta
  • 切换 Ag-Grid 中的浮动过滤器?

    我试图通过开关或按钮单击来确定浮动过滤器的显示 看起来很简单 我应该能够在 true 和 false 之间切换 将该值提供给网格选项中的浮动过滤器 然后刷新标题 对吗 不幸的是 网格似乎总是落后一步 当我第一次点击时 什么也没有发生 当我将
  • 为什么这个 fs.readFile 循环没有将其结果推送到我的数组? [复制]

    这个问题在这里已经有答案了 usr bin env node var fs require fs async require async program require commander program version 0 0 1 usa
  • 闭包和异步 Node.js 函数

    All 尝试了解 Node js 上下文中的闭包 异步调用 我有以下代码 timer setInterval pollOID 1000 function pollOID for channel in channels session get
  • 如何在 Electron 中使窗口大小响应。 (打开应用程序时)

    我最近开始在 Electron 上制作一个应用程序 我想让窗口具有响应能力 例如 如果我在不同的屏幕上打开应用程序 它应该根据屏幕尺寸以全尺寸打开 我的代码 app on ready gt const htmlPath path join
  • 如何拆分字符串,在特定字符处断开?

    我有这个字符串 john smith 123 Street Apt 4 New York NY 12345 使用 JavaScript 将其解析为最快的方法是什么 var name john smith var street 123 Str
  • 我以为我了解范围

    有人可以告诉我为什么 x 的最后一次记录等于0而不是1 我想因为它是在函数之外声明的 所以它具有全局范围 然后在函数中它的值设置为1并且该值将保持原样一个全球性的 我知道函数内的第一个 x 值是全局的 因为没有 var 关键字声明的任何变量
  • 未处理的 Promise 拒绝:push.on 不是函数

    我正在使用离子2 我得到这个打字稿error当尝试设置推送通知时 我从教程中复制了此示例代码 因此预计它可以工作 我一定有什么问题 任何想法请 Unhandled Promise rejection push on is not a fun
  • 车把错误:尽管已激活功能,但找不到属性“query-params”

    我试图在我的路线 控制器中使用查询参数 但车把助手导致了此错误 未捕获的错误 车把错误 无法在对象上找到属性 query params 此错误是由以下链接引起的 link to betround stats query params gam
  • 删除移动设备上的 adsense

    我正在研究响应式设计 但在使用 adsense 时遇到了问题 我有一个广告应该显示在桌面设计上 但不能显示在移动设计上 因此 只有在桌面上查看网站时 才应将广告代码放置在 html 中 css 可以使用 display none 但这违反了
  • getCompatedStyle 类似于 IE8 的 javascript 函数

    我正在尝试在 Java GWT 代码中编写一个 Javascript 函数 该函数获取以下样式的值 direction fontFamily fontSize fontSizeAdjust fontStyle fontWeight lett
  • 如何捕获 google 地图的无效 API 密钥

    我有这个代码 如果密钥无效 则会弹出警报 但我想在这种情况下执行一些操作 但我不知道如何连接它 有任何想法吗 Google 不提供检查 Google 地图 API 密钥的外部方法 因此 您无法使用例如查询某些服务 此代码有效吗abcde12
  • Jquery 脉动改变颜色或图像

    我正在尝试使用 jquery 脉动代码让 div 改变颜色 但我希望它从红色变为黑色 但我听说要做到这一点 你必须下载某个插件 所以我希望它脉动为图片 到目前为止我有这两个代码 img src 36 gif alt width 105 he
  • JQuery 循环遍历动态元素并获取数据值

    我正在尝试使用可折叠面板来完成我的要求 sport on click function var thisId this attr id var thisChildren this sportlist thisChildren each fu

随机推荐

  • data.table 根据组的滞后值删除行

    我有一个data table形式如下 DT lt data table tag rep c A B each 10 value c 0 3 3 3 0 1 1 1 3 0 0 1 3 1 0 3 0 1 1 0 gt DT tag valu
  • 连接 Apache Spark DataFrame 中的列

    我们如何连接 Apache Spark DataFrame 中的两列 Spark SQL中有没有我们可以使用的函数 通过原始 SQL 您可以使用CONCAT 在Python中 df sqlContext createDataFrame fo
  • 使用其他 gradle 文件中的 Gradle 函数

    我想将 300 行 build gradle 逻辑地拆分为多个构建文件 以使其更易于维护和扩展 正如我所注意到的 可以将 gradle 任务拆分为多个文件并将它们用于 apply from myGradleFile 遗憾的是 通过这种方法
  • 等待函数中的 Ajax 调用结束,然后将对象返回给外部变量

    我想按照预期使用 JavaScript 异步 我想将收到的数据 对象分配给我需要的尽可能多的变量 DataModel01 DataModel02 DataModel03 等 我的想法是 我对 API 数据的需求一直在变化 我只想定义一次从哪
  • 无需 IP 即可访问 R Shiny 应用程序

    我开发了一个 R Shiny 应用程序并托管在本地 Intranet 服务器上 我的同事可以使用 IP Port 来访问它 不像http 192 168 135 146 5050 http 192 168 135 146 5050 但是 如
  • django local_settings导入错误

    我想导入 local settings py 文件 不在我的 VCS 系统中 以覆盖 settings py 中的数据库设置 为此 我在 settings py 文件的最后添加了这些行 try from local settings imp
  • 就地映射 NumPy 数组

    是否可以将 NumPy 数组映射到位 如果是 怎么办 Given a values 2D 数组 这是目前对我有用的代码 for row in range len a values for col in range len a values
  • 旧浏览器是否支持 HTML 5 数据属性?

    我将一些自定义数据存储在 HTML5 数据属性中以进行 Jquery 处理 自定义数据属性在旧版浏览器中可用吗 HTML5datalist属性在较旧的浏览器中不可用 尽管它可以很容易地填充 您始终可以使用标准getAttribute方法而不
  • 增加 Xcode“最近项目”列表的长度?

    我经常在 Xcode 中切换处理许多不同的项目 有些是我正在积极处理的项目 有些是我正在查找代码的旧项目 我想在 SO 答案中重用或引用 这样我的 工作集 项目的一部分最终总是从最近的项目列表中消失 我确实使用查找器选项卡来查看当前项目文件
  • Asyncjs:绕过瀑布链中的函数

    我想从瀑布函数链中跳转一个函数asyncjs in nodejs 我的代码如下所示 async waterfall function next if myBool next null else Bypass the 2nd function
  • postgresql 中多列上的多个索引与单个索引

    阅读有关该主题的一些现有帖子 我无法得出任何结论性的答案 我有过去 10 年 100 个地点的某些数据 该表约有 8 亿行 我需要主要生成每个位置的年度统计数据 有时我还需要生成每月变化统计数据和每小时变化统计数据 我想知道是否应该生成两个
  • Angular2 应用程序:当 Google 不加载页面内容时进行获取

    我正在开发基于 Angular2 的网络应用程序 我使用 Angular CLI 生成应用程序 然后为产品构建它 我在 AWS S3 和 Cloudfront 上托管了网站 当我使用网站管理员提供的 Fetch as Google 工具时
  • 测试 OSGi 包的快速简便方法

    目前 我正在开发一个新的版本控制系统 作为大学最后一年项目的一部分 我们的想法是使其具有高度适应性和可插拔性 我们使用 OSGi 框架 Equinox 实现 来管理我们的插件 我的问题是我找不到简单易用的方法来测试 OSGi 包 目前 我必
  • ILASM 未设置文件版本

    我有一个 il 文件 可以毫无问题地编译它 我可以很清楚地命名它 所以没有任何问题 但我无法按照我的预期通过属性设置文件版本 使用 ilasm 时如何设置程序集的文件版本 如果我进行往返 我总是会得到一个 res 文件 该文件仅包含不可读的
  • 在 Celery 链中使用分组结果

    我陷入了相对复杂的芹菜链配置 试图实现以下目标 假设有如下一系列任务 chain1 chain DownloadFile s http someserver file gz downloads file returns temp file
  • Angular 4 - 如何显示继承类组件的模板

    我正在尝试根据项目 组件 的类型显示项目列表 我有一系列组件 全部继承自基类 数组类型被定义为基类的类型 我想显示数组 比如说作为项目列表 每个数组都有自己的模板 而不是基本模板 我已经尝试过 在app component html中
  • 调用 `this.setState()` 会中断对 componentWillReceiveProps 中 prop 的流类型检查

    当我调用时 我在知道是字符串的 prop 上遇到流错误this setState 就在它之前 如果我移动setState 在使用 prop 的行之后调用 错误就会消失 我收到的错误是 null 此类型与预期的字符串参数类型不兼容 不明确的
  • 在 contenteditable 元素中,在 HTML 标签之间移动光标

    http jsfiddle net Y7tgx 2 http jsfiddle net Y7tgx 2 Firefox 比 Chrome 处理得更好 但都不完全是我想要的方式 它们都将所有相邻的 HTML 标签集中在一起并将它们视为一个 我
  • 在 C++11 中禁用复制类的最简洁方法

    当存在用户定义的析构函数时 我在处理自 C 11 默认生成的复制构造函数和复制赋值运算符以来已弃用的问题 对于大多数足够简单的类 默认生成的构造函数 运算符和析构函数都可以 考虑以下声明析构函数的原因 在基类中将普通析构函数设为虚拟 hea
  • Ember 的 registerBoundHelper 和车把块

    所以我已经从here https github com danharper Handlebars Helpers并修改它 以便它使用 registerBoundHelper 通过 Ember 注册它的助手 我这样做的原因是因为我基本上需要一