当前位置: 首页 > news >正文

广东网站设计公司百度推广免费送网站

广东网站设计公司,百度推广免费送网站,微信小程序聊天室源码,永久免费crm系统少年歌行es6字符串模板 我们经常搞前端开发工作的都会用到。它可以保留字符串换行格式#xff0c;还能接受变量。这个给前端的字符串拼接带来了非常大的方便。但是还有一种用法可能是我们平时还是没有怎么用到的。 styled-components 在项目中熟悉使用react的童鞋可能会用过styled-…es6字符串模板 我们经常搞前端开发工作的都会用到。它可以保留字符串换行格式还能接受变量。这个给前端的字符串拼接带来了非常大的方便。但是还有一种用法可能是我们平时还是没有怎么用到的。 styled-components 在项目中熟悉使用react的童鞋可能会用过styled-components它的写法如下 const Title styled.h1font-size: 1.5em;text-align: center;color: palevioletred; ; 效果 最终就是生成一个带有上面样式属性的h1标签。 es6基础 这里看到它用到的就是es6的字符串模板。一开始我以为是预编译工具的语法。后面重温js基础时候看到了这个 string textstring text line 1string text line 2string text ${expression} string texttagFunctionstring text ${expression} string textdeveloper.mozilla.org 代码来源模板字符串 - JavaScript | MDN 字符串模板前面是可以接受函数名字的而这个函数的参数 arguments的内容是个数组数组的第一个值是所有普通字符串的数组剩余的元素是模板里面变量值 例如上面的代码tagFunctionstring text ${expression} string text 假设expression遍历的值是100tagFunction的arguments的值就是 [[string text,string text],100, ...其他变量值 //这里只有一个变量所以不存在其他变量值] 所以我们可以理解是执行了tagFunction函数并给该函数传递了解析字符串string text ${expression} string text对象 新的书写风格 既然是执行函数那函数是可以返回值的那我们可以在这个函数里面return个函数这样我们就有机会把代码写成这样 alink.stylescolor:${color};font-size:16px;background-color:${bgColor};.propshref:${url};tabIndex:1; .content跳转到${url} styles设置样式属性props设置标签属性content设置标签内容  HTMLElement对象拓展 那我们给html标签对象进行拓展方法如下 HTMLElement.prototype.styles function () {return this } HTMLElement.prototype.props function () {return this } HTMLElement.prototype.content function () {return this } 还需要对 arguments对象进行解析得到keyvalue 解析arguments const getAttAndValueString (args, isContent) {let startIndex 0const attr args[0].map((item) {return item.replace(\n, ).replace(/\s/g, ).trim()}).filter(item item)const value args.slice(1).filter(item item)let resultString attr.forEach((element, index) {if (element.endsWith(:) || isContent) {resultString ${element}${value[startIndex]}startIndex} else {resultString ${element}}})return resultString } 最终代码 const getAttAndValueString (args, isContent) {let startIndex 0const attr args[0].map((item) {return item.replace(\n, ).replace(/\s/g, ).trim()}).filter(item item)const value args.slice(1).filter(item item)let resultString attr.forEach((element, index) {if (element.endsWith(:) || isContent) {resultString ${element}${value[startIndex]}startIndex} else {resultString ${element}}})return resultString}HTMLElement.prototype.styles function () {let resultString getAttAndValueString(Array.from(arguments))console.log(resultString, resultString)const styleAttr this.getAttribute(style);if (styleAttr) {resultString ${styleAttr.endsWith(;) ? styleAttr : styleAttr ;} ${resultString}}this.setAttribute(style, resultString);return this}HTMLElement.prototype.props function () {// let resultString getAttAndValueString(Array.from(arguments))// let obj resultString.split(;).filter(item item.length 0)// obj.forEach(item {// const [prop, ...value] item.split(:);// this.setAttribute(prop, value.join(:))// })return this}HTMLElement.prototype.content function () {// this.innerText getAttAndValueString(Array.from(arguments), true)return this}var alink document.querySelector(#alink)var color redvar bgColor bluevar url http://baidu.comalink.stylescolor:${color};font-size:16px;background-color:${bgColor};.propshref:${url};tabIndex:1;.content跳转到${url} 在线效果 https://jsbin.com/kawumewoto/4/edit?html,js,output
http://www.w-s-a.com/news/338422/

相关文章:

  • 高密做网站哪家好网站建设预算
  • 免费wordpress网站模板重庆如何做聚政网站
  • 人才网站app建设建议系统开发生命周期法的优点表现
  • 门户网站想要微信登录怎么做湖南网站seo推广
  • 襄阳 网站建设管理系统网站
  • 重庆工程建设招标投标交易信息网广州外贸seo优化
  • 一个一起做网站东莞设计兼职网站建设
  • 杭州网站程序开发公司在哪个公司建设网站好
  • 网店的网站设计方案济南手机建站价格
  • 网站做了301重定向域名会自动跳转吗唐山地方志网站建设
  • 学校网站建设说明书海南省建设执业资格注册管理中心网站
  • 东莞哪家网站建设好网站风格设定
  • 自驾游网站模板搭建wordpress步骤
  • wordpress视频网站上传视频提升学历是什么意思
  • 江西省城乡建设厅建设网站浙江建设
  • 网站联系我们页面临平做网站
  • 如何用网站做cpa交互比较好的网站
  • 一家只做特卖的网站wordpress修改模板教程
  • 与恶魔做交易的网站成都到西安高铁票价
  • 太原网站制作哪家便宜长春昆仑建设股份有限公司网站
  • 优质做网站价格设计手机商城网站建设
  • 高校网站建设制度无锡网站建设排名
  • 做网站的软件wd的叫啥无锡公司网站建设服务
  • 网站建设一般需要多久网站服务器基本要素有哪些
  • 大连开发区网站开发公司免费网站建设哪个好?
  • 关于建设门户网站的通知海曙区建设局网站
  • 韩国建设部网站温州企业网站制作
  • 苏州网站建设优化贵州网站建设lonwone
  • 网站建设与推广方案模板网站建设教程搭建浊贝湖南岚鸿给力
  • 网站建设内部下单流程图昆明网站制作公司