当前位置:首页> 社会热点 > html select在html span实际的实操和应用

html select在html span实际的实操和应用

2022-10-04 20:46:19 来源: 网络   编辑: 佚名   浏览(259)人   
0

html selecthtml span实际的实操和应用

    html span样式官方已经写好一个html span样式-html select模板html span样式_cli,原本自己写一个,发现官方写得已经够好了,自己写显得有点多余,但为了让大家熟悉html select,决定还是一步一步从0开始写,但源文件就直接拷贝官方的。

    准备工作

    新建文件夹D:\www2019\select\html span样式2019,下面根目录指的就是这个目录

    生成package.html objecton,根目录>npminit

    安装html selecthtml select开发服务器,根目录>cnpmi-Dhtml selecthtml select-dev-server

    安装html span样式、html span样式xhtml span样式-router,根目录>cnpmi-Shtml span样式html span样式xhtml span样式-router

    下载html span样式_clihtml select模板中sel这个源文件夹到根目录\sel

    安装html span样式

    D:\www2019\select\html select2019>cnpmihtml span样式-S

    如果有下面的报错

    [html span样式warn]:Youareusingtheruntime-onlybuildofhtml span样式wherethetemplatecompilerisnotavailable.Eitherpre-compilethetemplatesintorenderfunctions,orusethecompiler-includedbuild.

    (foundin<Root>)

    解释:运行时构建不包含模板编译器,因此不支持template选项,只能用render选项,但即使使用运行时构建,在单文件组件中也依然可以写模板,因为单文件组件的模板会在构建时预编译为render函数

    修改D:/www2019/select/html select2019/build/html selectfile.html object

    resolve:{

    alias:{

    'html span样式':'html span样式/dist/html span样式.html object'

    }

    },

    最简单的例子

    D:\www2019\select\html select2019\today\wang\home.html object

    importhtml span样式from'html span样式';

    constapp=newhtml span样式({

    template:'<div>hellowolr</div>'

    }).$mount('#main')

    //D:\www2019\select\html select2019\today\wang\home.html object

    importAppfrom"./app.html span样式"

    importhtml span样式from'html span样式';

    constapp=newhtml span样式({

    template:'',

    components:{App}

    }).$mount('#main')

    //D:\www2019\select\html select2019\today\wang\App.html span样式

    <template>

    <div>上午好</div>

    </template>

    报错

    UncaughtError:Moduleparsefailed:Unexpectedtoken(1:0)

    Youmayneedanappropriateloadertohandlethisfiletype.

    安装并配置html span样式-loader

    官方文档https://html span样式-loader.html span样式html object.org/...

    D:\www2019\select\html select2019>cnpmihtml span样式-loader-D

    提示要安装html socket-loaderhtml span样式-template-compiler,现在将这两个也一起安装

    D:\www2019\select\html select2019>cnpmihtml socket-loaderhtml span样式-template-compiler-D

    现在就可以正常显示html span样式组件

    处理html socket文件

    color:inherit;line-height:22px;font-family:"SourceCodePro",Consolas,Menlo,Monaco,"CourierNew",monospace;font-size:1em;display:block;white-space:inherit;-ms-overflow-x:auto;-ms-word-wrap:normal;box-sizing:border-box">//D:\www2019\select\html select2019\today\wang\color:rgb(html 公式编辑器111119)">app.html socket

    body{

    color:#09f;

    }

    处理单独的html socket文件

    没有装html socket-loader会报错

    ERRORin./today/wang/app.html socket

    Moduleparsefailed:Unexpectedtoken(1:0)

    Youmayneedanappropriateloadertohandlethisfiletype.

    安装和配置

    官方文档:https://html select.html object.org/loader...

    D:\www2019\select\html select2019>cnpmi-Dhtml socket-loader

    {

    test:/\.html socket$/,

    loader:'html socket-loader',

    },

    对上面导入的html socket一般有两种处理,一是使用style-loaderhtml socket嵌入到html文件的style标签中,一种是单独存在一个文件中

    style-loader

    官方文档:https://html select.html object.org/loader...

    D:\www2019\select\html select2019>cnpmistyle-loader-D

    {

    test:/\.html socket$/,

    loader:'style-loader!html socket-loader',

    },

    多个loader是从右到左执行,多个loader之间用!连接,上面多个loader也可以写在数组的形式

    {

    test:/\.html socket$/,

    use:[

    {loader:"style-loader"},

    {loader:"html socket-loader"}

    ]

    }

    这种写法是,从下到上执行,先执行html socket-loader再执行style-loader

    html socket文件单独打包到一个文件

    这要使用到ExtractTexthtml selectPlugin插件

    处理less/sass等文件

    这要用到less-loadersass-loader,同时得安装lesssass,如果没安装会报错

    [html span样式warn]:ErrorinbeforeCreatehook:"Error:Cannotfindmodule"!!html span样式-loader/node_modules/html span样式-style-loader!html socket-loader!../../node_modules/_html span样式-loader@13.6.0@html span样式-loader/lib/style-compiler/index?{"html span样式":true,"id":"data-v-381730fa","scoped":false,"hasInlineConfig":false}!less-loader!../../node_modules/_html span样式-loader@13.6.0@html span样式-loader/lib/selector?type=styles&index=0&bustCache!./app.html span样式""

    ave组件的内容

    style="background:none;padding:0;border-radius:4px;style="color:rgb(html 公式编辑器950)">color:inherit;line-height:22px;font-family:"SourceCodePro",Consolas,Menlo,Monaco,"CourierNew",monospace;font-size:1em;display:block;white-space:inherit;-ms-overflow-x:auto;-ms-word-wrap:normal;box-sizing:border-box"><style="color:rgb(98199html 公式编辑器)">template>

    <style="color:rgb(html 公式编辑器111119)">divclass='morning'>上午好</style="color:rgb(html 公式编辑器111119)">div>

    </style="color:rgb(98199html 公式编辑器)">template>

    <stylelang='less'>

    @style="color:rgb(html 公式编辑器950)">color:#f96;

    .morningstyle="color:rgb(98199html 公式编辑器)">template-variable">{

    style="color:rgb(html 公式编辑器950)">color:@style="color:rgb(html 公式编辑器950)">color

    }

    </style>

    安装lessless-loader

    D:\www2019\select\html select2019>cnpmi-Dlessless-loader

    配置

    {

    test:/\.html socket$/,

    use:ExtractTextPlugin.extract({

    //fallback:"style-loader",//备用,如果提取不成功时,会使用style-loader来处理html socket

    use:"html socket-loader"

    })

    /*use:[

    {loader:"style-loader"},

    {loader:"html socket-loader"}

    ]*/

    },

    {

    test:/\.less$/,

    use:[

    {

    loader:"style-loader"//createsstylenodesfromhtml objectstrings

    },

    {

    loader:"html socket-loader"//translateshtml socketintoCommonhtml object

    },

    {

    loader:"less-loader"//compilesLesstohtml socket

    }

    ]

    },

    上面这个例子,只有导入的html socket文件单单独存在一个文件中,html span样式组件中的less归到了style中了,

    说明:在html span样式组件<style>中,如果lang="less",在html span样式-loader中默认配置好了less,无须另外配置

    说明:上面例子是配置的是单独的less文件,不适合html rtmp中的less

    说明:如何将html span样式中的less也放到单独的html socket文件中呢?参考https://html span样式-loader.html span样式html object.org/...

    {

    test:/\.html span样式$/,

    loader:'html span样式-loader',

    options:{

    extracthtml socket:true

    }

    }

    但上面有个缺点,会覆盖之前html socket中的配置中生成style.html socket文件,如何解决呢?

    constpath=require('path');

    consthtml select=require('html select')

    constUglifyhtml objectPlugin=require('uglifyhtml object-html select-plugin')

    constHtmlhtml selectPlugin=require('html-html select-plugin');

    constExtractTextPlugin=require("extract-text-html select-plugin");

    constextracthtml socket=newExtractTextPlugin('html socket/[name]-one.html socket');

    constextractLESS=newExtractTextPlugin('html socket/[name]-two.html socket');

    module.exports={

    plugins:[

    extracthtml socket,

    extractLESS

    ],

    module:{

    rules:[

    {

    test:/\.html socket$/,

    use:extracthtml socket.extract({

    //fallback:"style-loader",//备用,如果提取不成功时,会使用style-loader来处理html socket

    use:"html socket-loader"

    })

    },

    {

    test:/\.html span样式$/,

    loader:'html span样式-loader',

    options:{

    //extracthtml socket:true

    extracthtml socket:function">function(){

    returnextractLESS

    }

    }

    }

    ]

    },

    }

    导入html 菜单栏

    style="background:none;padding:0;border-radius:4px;style="color:rgb(html 公式编辑器950)">color:inherit;line-height:22px;font-family:"SourceCodePro",Consolas,Menlo,Monaco,"CourierNew",monospace;font-size:1em;display:block;white-space:inherit;-ms-overflow-x:auto;-ms-word-wrap:normal;box-sizing:border-box">//D:\www2019\select\html select2019\today\wang\style="style="color:rgb(html 公式编辑器950)">color:rgb(html 公式编辑器111119)">App.html span样式中增加html 菜单栏

    <style="color:rgb(98199html 公式编辑器)">template>

    <style="color:rgb(html 公式编辑器111119)">divclass='morning'>

    <style="color:rgb(html 公式编辑器111119)">imgsel="../images/style="style="color:rgb(html 公式编辑器950)">color:rgb(73238html 公式编辑器)">logo.jpg"/>

    <style="color:rgb(html 公式编辑器111119)">imgsel="../images/a.jpg"/>

    上午好

    </style="color:rgb(html 公式编辑器111119)">div>

    </style="color:rgb(98199html 公式编辑器)">template>

    <stylelang='less'>

    @style="color:rgb(html 公式编辑器950)">color:#f96;

    .morningstyle="color:rgb(98199html 公式编辑器)">template-variable">{

    style="color:rgb(html 公式编辑器950)">color:@style="color:rgb(html 公式编辑器950)">color

    }

    </style>

【版权与免责声明】如发现内容存在版权问题,烦请提供相关信息发邮件至 1439028666@qq.com ,我们将及时沟通进行删除处理。 本站内容除了 98link( http://www.98link.com/ )特别标记的原创外,其它均为网友转载内容,涉及言论、版权与本站无关。