问题标签 [angular2-template]
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.
angular - Angular 2 - 将条件样式应用于指令的子 HTML 元素
我正在尝试基于单击事件将类应用于 HTML 元素。从父组件的模板中为子组件的选择器设置类属性时,这可以正常工作,如父组件的以下片段所示:
这将在单击该项目时适当地设置样式。但是,我想基于相同的点击事件在子组件中设置一个内部 HTML 元素的类,这是子组件样式的所需目标:
有没有一种容易支持的方法?或者这被认为是一种不好的做法,我应该设计我的组件以避免这种有条件的样式情况?
完整代码:
angular - 用于自定义可重用组件的 Angular2 数据绑定
我想要一个由标签和文本框组成的模板。这个模板可以在我页面的不同地方重复使用。为此,我创建了一个 MyTextComponent。我想知道如何将不同的值绑定到组件输入。
例如:
我的文本组件
我的页面组件
如何将 MyTextComponent 输入的 ngModel 绑定到 MyPageComponent 局部变量?
编辑:在添加@Output 后尝试,但它没有工作:( MyPageComponent 中的插值是空白的,并且日志打印未定义。但是插值适用于 mytextComponent。任何想法
meteor - 使用组件输入更新模板
前言:我是 Meteor、Angular 和 Typescript 的新手,所以这里很可能会出现 XY 问题。
我正在使用 Meteor 和 Angular 2(使用angular2-meteor包)开发一个简单的项目管理应用程序,其中结构(目前)由具有事件的项目组成。一种视图是项目列表。单击项目会显示项目详细信息的模式,包括项目事件列表。因此,三个组件:ProjectList
、ProjectDetails
和ProjectEventsList
。ProjectDetails
使用Session
变量来知道要显示哪个项目,并且有效。但是,模式中的事件列表在为单击的第一个项目创建后不会更新。
项目事件列表.ts
据我了解(尽管我可能会离开这里),我很难autorun
自动运行。我试过放一个getter和setter,projectId
当我点击一个项目时它会更新,但里面的代码在autorun
第一次点击后不会运行。我尝试过的事情:
subscribe()
切换和的嵌套autorun()
。- 添加/删除 autobind 参数到
subscribe()
和autorun()
。我真的不明白那应该做什么。 将订阅代码移动到 setter 上
projectId
:当我这样做时,列表停止显示任何项目。
如果这一切看起来应该可行,我将创建一个小测试用例来发布,但我希望这里的某些内容对于那些知道的人来说显然是错误的。谢谢!
angular - 组件模板表达式未更新
在我的主视图中,我注入了一个组件,在初始加载时,它显示了正确的整数,但如果我稍后在主视图中更新该值,附加到函数的控制台日志消息显示正确的整数,但实际的 html 值确实不更新。这里发生了什么?
主.js:
price-box.js
所以重申一下:在加载页面时,我的价格框元素显示价格为 130...当我尝试通过该值设置新值时,pbox.price = 200
该值保持在 130但我收到控制台日志消息说SET price box: price = 200
谢谢!
angular - 如何使用管道保存 *ngFor 的模型操作?- “#item of (result = (items | orderAsc))”在 A2 中不起作用
所以我用 *ngFor 填充了一个表,并使用管道来过滤和排序给定的 items 数组。这完美地工作并且表行按预期创建。但我也不想在托管表格的组件中使用管道的结果。angular2如何实现这一点?
我当前的html:
保存结果的旧 angularJS 方式:
其中“结果”可以在相应的控制器中使用。
实现这一目标的 angular2 方式是什么?我想将过滤保留在 html 模板中,而不是将其移动到组件中。
angularjs - Including external javascript libraries inside Angularjs 2 component templates
Angularjs 2 documentation mentions,
Almost all HTML syntax is valid template syntax. The <script> element is a notable exception; it is forbidden in order to eliminate any possibility of JavaScript injection attacks (in practice it is simply ignored).
So is there any other way of including external javascript files to a Component template? (like a chart plugin, j3d etc.)
My problem in details..
I have some charts inside a angular2 template(say charts.html). These charts are some what interactive.. They show more details when user move the pointer on the charts. (JQuery based) . Since I am injecting charts to index.html dynamically (with angularjs), those charts plugins doesn't recognizing dynamic content. (even some css properties doesn't apply to the classes of the dynamic contents).
javascript - 如果我的导入语句中没有 .js,Angular 2 会抛出错误
我按照 angular.io 的 5 分钟快速入门中的说明进行操作,一切正常。我使用时不必声明 .js
然后我开始使用 templateUrl 加载其他组件
当我运行代码时,我收到一条错误消息,说它找不到 localhost:300/src/nav/navMenu
但是如果我在最后添加一个 .js
它工作正常。我已经将 index.html 设置为..
难道不应该这样我就不必再在导入时使用 .js 扩展名了吗?提前致谢。
angular - Angular 2模板标签说对象未定义
处理 Angular 2 中的奇怪问题。
如果您查看下面的组件,该服务会返回一个已解析的对象——例如我可以console.log
。您可以看到粘贴为注释的输出。每当我尝试在视图中使用所述对象时,都会出现错误:EXCEPTION: TypeError: Cannot read property 'subject' of undefined in [{{theData.subject}} in SubjectHomeComponent@2:27]
.
这对我来说没有意义,因为我可以在控制台中看到对象就好了。运行typeof
还返回它是一个对象。
组件代码
服务代码(我认为不相关,但你永远不知道)
angular - Angular2 SVG xlink:href
我有用于渲染 SVG 图标的组件:
这会触发错误:
如何设置动态xlink:href
?