问题标签 [angularjs-bindings]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
angularjs - angularjs绑定到属性
我正在尝试动态地将指令加载到另一个指令中,因此我尝试将其ng-repeat
用于以下内容,{{item.directiveName}}
内部指令名称在哪里。
问题是{{item.directiveName}}
没有评估,它保持原样。我认为因为它不是属性的值,所以它是属性。
有没有办法评估这个表达式,或者 angularjs 不支持这个?
javascript - 自定义指令中的 ng-table 错误“无法设置属性 '$data' of null”
这是我的问题:
我正在尝试以角度构建一个指令,该指令将使用ng-table
内部。问题是输入参数tableData
最初被初始化为一个空数组,因为它是在用户单击按钮时从指令外部设置的。
所以我在表上添加了一个手表,并在更改tableData
时尝试重新加载表。tableData
但是differ.resolve 函数最终会出现以下异常。
请帮忙
指令用法
这是我的温度
TableMultiselect.tmpl.cshtml
控制器
错误
javascript - AngularJS:将服务值绑定到指令
我对 AngularJS 有点陌生,我尝试制定自己的指令。
我的目标是创建一个“时钟”指令,从一般服务中获取他的数据。问题是我没有成功将当前时间的值从服务绑定到指令(实际上是视图)。第一个值(“正在加载”)保留在屏幕上,而不是更新为新值(时间)。这是我的代码:
Javascript:
HTML:
顺便说一句,我想这不是实现这个想法的最佳方式,所以如果有更好的建议也可以解决我的问题,我也很乐意听到它。
谢谢!
javascript - AngularJS controllerAs:更新 $interval 中的控制器字段不会更新 ng-show
我正在使用 controllerAs 语法,并且由于某种原因,在 $interval 中更新控制器的字段时,它不会正确显示/隐藏视图中的元素。我使用 Angular 的 UI 路由器。
这个问题最好用我认为的代码来描述,所以请原谅代码转储。
我的状态(“refreshLogs”只是一个调用 logService 以获取更新日志的函数):
我的控制器:
最后是视图:
它会在 DOM 更新中显示“ng-show”值,但不会根据该值显示/隐藏元素。我在 Chrome 中检查了 DOM,我看到了这一点(添加星号以强调):
一开始是正确的,并且显示了正确的 div。几秒钟后,日志被刷新,“vm.log”变量被设置为一个非空值(我知道这是因为我在分配这个值的 JS 代码中设置了一个断点,它看起来是正确的)。之后,我再次检查 DOM 并看到:
注意显示正确值的“ng-show”属性。因此,表达式显然已被重新评估。但是,旧的“等待日志...”标题仍然显示,并且第一个 div 没有显示(并且它仍然应用了“ng-hide”css 类)。
我在这里想念什么?
html - Angularjs ng-bind-html 调整按钮大小以适应内容大小?
给定带有一些 FontAwesome 图标的文本列表,我的控制器需要将其传递给模板,并将每个文本呈现为按钮。
示例文本:
我的代码:
但是它不会按预期工作。
[[text]]
将转义任何 htmlng-bind-html
插入文本后将无法调整按钮大小
这里还能做什么?
angularjs - Angular 指令未检测到父控制器属性的变化
我有一个使用“控制器作为”方法的 HTML 文件。它有一个复杂的属性类型(一个对象数组),我想通过 Angular 指令向用户展示它,以便我也可以在其他页面上使用它。我的指令还使用“控制器作为”方法。
当主控制器的 documentReferenceStructure 属性更新时,网页在“Length”之后的 HTML 中显示正确的数组长度,但指令没有更新,仍然显示“Hello 0”。如果在指令中添加一个按钮,以便我可以检查其 documentReferenceStructure 属性的值,它似乎永远不会更新。
更新页面控制器的 documentReferenceStructure 属性不会向下传播到指令中,这不是 scope: { documentReferenceStructure : "=" } 应该做的吗?
我错过了什么?链接()中的东西也许?
angularjs - 显示后更新数据
在我的 Angular 应用程序中,我有一个消息数组,每个消息都有一个页面数组,应该在这些页面上显示它:
这是在应用程序加载时从服务器获取的,然后与来自服务器的推送事件保持同步。在页面之间导航时不会重新加载。
我有一个指令来显示这些消息,它采用数组和页面 ID,并且只显示当前页面尚未查看的消息。到目前为止,一切都很好。
现在我想设置viewed
为true
一旦消息显示一次。如果我一显示就这样做,那么数据绑定将立即将其从视图中删除。如果我在范围内$destroy
这样做,只要用户导航到另一个角度页面,它就可以工作。如果用户刷新或关闭选项卡,或导航到外部 URL,则viewed
保持false
. 我不能使用onbeforeunload
,因为我需要执行 AJAX 请求来更新服务器上的消息。而且我不想使用一次绑定,因为这会阻止显示任何新消息。
在显示后更新属性似乎是一个相当合理的要求,但我对如何实现它的想法感到困惑。有什么建议么?
angular - Angular2 装饰器,用于 2 路属性绑定
来自 Victor Savkin 关于Angular2 模板语法的帖子,展示了如何使用输入和输出属性绑定 -
输入属性用@Input() 修饰,而输出属性用@Output() 修饰。我应该如何声明一个将具有 2 路属性绑定的属性?示例:假设 rootpanel 组件具有 'suggestions' 属性(字符串类型)并且 searchPanel 具有 'getSuggestions 属性。现在我希望这两个属性以两种方式相互绑定。我试过 -
根面板.html:
但是我在 searchPanel 组件中声明 getSuggestions 属性时被卡住了。getSuggestions 属性的类型应该是什么string or EventEmitter<string>
?
请建议。
angularjs - Angularjs不更新变量
我想直接显示/更新计算答案,而不需要额外的按钮。还是我需要一个功能和按钮来应用更改?
控制器:
angularjs - ng-non-bindable 仅适用于元素的内容
在我们的 Angular 应用程序中,我们有一个在服务器端填充用户内容的链接。所以我们需要告诉 Angular 不要解释那个链接内容。否则,如果用户或攻击者将 Angular 绑定表达式放在那里(比如 {{User.Password}}),那么 Angular 会评估它,从而打开一个安全漏洞——一种 XSS 攻击。
ng-non-bindable主要是这样做的。但是,我们也希望链接本身由 Angular 操作。
@site.value.Name 是插入内容的服务器端代码。
如果我们将 ng-non-bindable 放在 a 元素上,那么 ng-class 将不起作用。我能看到的唯一解决方案是在其中插入另一个 span/div 并将 ng-non-bindable 应用于:
这看起来很笨拙,必须修改 HTML 结构才能阻止 Angular 干扰服务器端数据。
有没有更清洁的解决方案?
理想情况下,我希望 ng-non-bindable (或变体)表示“不绑定内容,但将此元素视为正常”。