从Grails UI-performance插件迁移到资源插件

时间:2014-06-03 07:23:25

标签: grails

我正在尝试在我的项目中安装资源插件。 我很困惑我应该把这段代码放在哪里。

请参阅此页resource plugin

package com.flashsales.utils

// maps UI Performance tags to resources plugin tags
class ConvertUiPerformanceTagLib {

    static namespace = 'p'

    def css = { attrs ->
        attrs.uri = "/css/${ attrs.remove( 'name' ) }.css"
        attrs.type = 'css'
        out << r.external( attrs )    }   def image = { attrs ->
        attrs.uri = '/images' + attrs.remove( 'src' )
        out << r.img( attrs )     }   def javascript = { attrs ->
        attrs.uri = "/js/${ attrs.remove( 'src' ) }.js"
        attrs.type = 'js'
        out << r.external( attrs )
    }

    //  TODO: imageLink, favicon, inputImage, sprite, dependantJavascript and addJavaScript

}

我已经完成了第1步和第2步,并坚持到第3步。

1 个答案:

答案 0 :(得分:0)

在grails -app / taglib / sample.groovy

创建一个文件

使用此代码

class ConvertUiPerformanceTagLib {

    static namespace = 'p'

    def css = { attrs ->
        attrs.uri = "/css/${ attrs.remove( 'name' ) }.css"
        attrs.type = 'css'
        out << r.external( attrs )    }   def image = { attrs ->
        attrs.uri = '/images' + attrs.remove( 'src' )
        out << r.img( attrs )     }   def javascript = { attrs ->
        attrs.uri = "/js/${ attrs.remove( 'src' ) }.js"
        attrs.type = 'js'
        out << r.external( attrs )
    }

此代码用于读取您的标记。例如:<p:img src="" / >或css等

所以当你使用<p:img src="" />

它会执行第一次

def css = { attrs ->
        attrs.uri = "/css/${ attrs.remove( 'name' ) }.css"
        attrs.type = 'css'
        out << r.external( attrs )    }   def image = { attrs ->
        attrs.uri = '/images' + attrs.remove( 'src' )
        out << r.img( attrs )     }   def javascript = { attrs ->
        attrs.uri = "/js/${ attrs.remove( 'src' ) }.js"
        attrs.type = 'js'
        out << r.external( attrs )
    }