标签: custom-tag

不使用自定义HTML标记的原因是什么?

鉴于目前的HTML5规范,允许创建自定义HTML元素(只要他们的名称中包含一个破折号),而事实上,Web组件似乎是一个功能,在这里留下来,我想知道为什么是创建自己的自定义HTML元素不满意?

请注意,我不是在问是否使用Web组件 - 它仍然是一个移动目标,即使像Polymer这样的大型polyfill也可能尚未准备好进行生产.我问的是创建自己的自定义HTML标记并设置样式,而不需要附加任何JS API.

html5 custom-tag custom-element

5
推荐指数
1
解决办法
216
查看次数

如何在JSF 2.2中创建包含自定义标记和复合组件的干净标记库(.jar)?

我已经阅读了关于如何在Web应用程序中创建复合组件和自定义标签的各种博客文章和stackoverflow帖子,并且已经让事情正常工作.我现在正试图将所有内容移动到可重用的JAR文件中.

mylib.jar层次结构:

src/main/java
    com.example.MyComposite.java
src/main/resources/
    META-INF
        faces-config.xml
        my.taglib.xml
    META-INF/resources/components
        myComposite.xhtml
    META-INF/tags
        myTag.xhtml
Run Code Online (Sandbox Code Playgroud)

my.taglib.xml:

<facelet-taglib version="2.2"
            xmlns="http://xmlns.jcp.org/xml/ns/javaee"
            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
            xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-facelettaglibrary_2_2.xsd">

    <namespace>http://www.example.com/components</namespace>

    <tag>
        <tag-name>myTag</tag-name>
        <source>
                tags/myTag.xhtml
        </source>
    </tag>

    <tag>
        <tag-name>myComposite</tag-name>
        <component>
            <resource-id>
                components/myComposite.xhtml
            </resource-id>
        </component>
    </tag>
</facelet-taglib>
Run Code Online (Sandbox Code Playgroud)

我将它构建为一个jar并在我的web-app中使用它,自定义标记和复合组件都很好用.我花了100个不同的层次结构来让它工作.

我的问题是我不喜欢我似乎必须将自定义标签放在一个地方(/ tags)和复合组件放在另一个地方(/ resources/components).另外,我必须引用带有标记的自定义标记和带有component/resource-id标记的复合组件.例如,我尝试将myTag.xhtml放入/ resources/components并使用resource-id引用它,但是当我尝试使用它时,我得到了NPE.

那么标签和组件必须在不同的目录中吗?我只需要忍受这种等级制度吗?

custom-tag composite-component jsf-2.2

4
推荐指数
1
解决办法
2772
查看次数

你如何决定使用什么:UDF或自定义标签?

WACK说:

如果您觉得需要大量参数,请考虑创建CT.

...

CT比自定义功能更强大,更灵活.尝试将UDF用于简单的事情...将CT和组件用于更多涉及的过程,尤其是那些您可以将其视为离散动作而非简单"按摩"的过程

好的,但你通常如何做决定?有兴趣了解现实生活中的实践和例子.

对我来说,当一个函数有许多不需要的参数时,就会发生这种情况,因此我必须将它们称为myFunc(arg1 ="foo",arg2 ="bar").有时<cfmodule>语法变得更易读,但并非总是如此.

其他原因是我不喜欢长(例如,超过2个代码屏幕)UDF.

但所有这些想法都是非常主观的,这就是为什么我有兴趣阅读其他人的意见.也许有更好的规则?

提前致谢.

coldfusion custom-tag user-defined-functions

3
推荐指数
1
解决办法
1011
查看次数

何时应该在CFML中使用自定义标签?

实现CFML自定义标记(不是CFX标记)有哪些常见用例?在我的CF exp 3年里,我从未写过一篇.有人请赐教,在哪个用例/情况下会选择自定义标签而不是cfc/udf?

coldfusion custom-tag

3
推荐指数
1
解决办法
877
查看次数

</ div> </ div>自动关闭创建孩子而不是兄弟姐妹

我真的很喜欢使用普通<tag/>格式的标签"短暂关闭",但遗憾的是在浏览器中使用这种方法(即chrome)会导致非常意外的行为.

在文件中我有:

<div/><div/> 
Run Code Online (Sandbox Code Playgroud)

它被解释为

<div>
   <div></div>
<div>
Run Code Online (Sandbox Code Playgroud)

无论我使用什么DOCTYPE(XHTML)或HTML5,我都会以错误的方式得到它.我也在命名空间中使用这种"符号"来定制标记,<widget:aSampleWidgetA/> <widget:aSampleWidgetB/>这也引入了这个问题.

我不想使用完整的关闭符号,因为它在代码中造成了很多视觉混乱.有没有办法强制浏览器将这些标记解析为正确的XML?

browser google-chrome custom-tag xml-parsing

3
推荐指数
1
解决办法
747
查看次数

属性范围与属性结构

自定义标记具有属性范围.凉.

我还看过其他一些应用程序(可能还有ColdBox?),其中开发人员将所有内容都放入属性结构中.例如login.cfm:

<cfparam name="attributes.username" default="some value">

除了必须指明attributes.foo哪些确实提高了可读性之外,还有一点要说明,但我承认为什么要​​重用一个完整范围的名称?

这是个人偏好还是我遗漏了属性范围的深刻内容?

coldfusion attributes custom-tag

1
推荐指数
1
解决办法
1781
查看次数

使用jquery获取自定义标记(包含冒号)值

我有一个自定义标签.我想使用jquery为自定义标记设置值.虽然看起来是一个愚蠢的问题,但我花了更多的时间来搜索结果.

我的标签是

<error:description code="12345" type="error" result="description" />${description}
Run Code Online (Sandbox Code Playgroud)

现在我想要获取该标记,并且必须使用jquery传递值.

请帮我怎么做.

我没有,things i tried area因为我甚至不知道如何开始.

提前致谢

jquery custom-tag

1
推荐指数
1
解决办法
1924
查看次数

coldfusion性能比较:自定义标签与功能

在我的测试盒上,我有ColdFusion 10并且只分配了1gig:"最大JVM堆大小(以MB为单位)= 1024".

我有一个循环大约1000次的过程.每次循环迭代都会调用自定义标记〜200次.所以大约有200,000个电话.这个过程永远不会结束,我最终耗尽了记忆.我确定这是我在标签里面做的问题,而不是标签本身.但我想证明这一点.我跑这个测试,似乎ColdFusion的功能要快得多2.7secs,而不是14.6secs.测试只增加一个数字.

我的问题是:这似乎是一个有效的测试吗? 如果功能如此之快,那么尽可能使用它们而不是自定义标签是经验法则吗?

检测结果:

x = 0
Running good customtag 1000000 times...
x = 1000000
Time to complete: 14627

x = 0
Running good function 1000000 times...
x = 1000001
Time to complete: 2793
Run Code Online (Sandbox Code Playgroud)

good.cfm自定义标签:

<cfparam name="ATTRIBUTES.x" type="numeric" default="0">

<cfif thisTag.ExecutionMode eq "end">
    <cfset request.x = ATTRIBUTES.x+1>
    <cfset thistag.generatedcontent = "">
</cfif>
Run Code Online (Sandbox Code Playgroud)

测试代码:

<cffunction name="good" output="false" returntype="Numeric" access="private">
    <cfargument name="numIn" type="numeric" required="true">
    <cfset var x = 0>
    <cfset x = arguments.numIn + …
Run Code Online (Sandbox Code Playgroud)

memory coldfusion performance function custom-tag

0
推荐指数
1
解决办法
346
查看次数