首页 > 技术文章 > 如何解决IE不兼容ES6的模板字符串

pengxiangchong 2020-04-13 17:31 原文

IE浏览器再词法分析阶段如果遇到ES6的模板字符串,就会抛出错误,导致程序无法正常运行。

这时候需要将ES6的模板字符串改写为普通的单引号或者是双引号来代替,如果只有多行字符串,就需要在换行处使用加号进行连接,在第二行继续使用引号,如:

'<li>000/li>'+
'<li>111</li>'

参考链接:https://blog.csdn.net/joyvonlee/article/details/91366187?depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromBaidu-1&utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromBaidu-1

但是!

如果字符串大于或等于100行呢?怎么办?难道一行行拼接吗?会疯的!

var pc_xieyi = `
<div class="pc_black"></div>
<div class="pto_box">
	<div class="pto_tit">服务协议</div>
	<div class="pto_detail">欢迎您使用服务!</div>
	<div class="pto_txt">
		<p>件的用户提供贷款产品适配服务的品牌。</p>
		<p>下述,也包括指代服务的提供者。</p>
		<p>“用户”或“会员”是关服务的使用人,在本协议中更多地称为“您”。</p>
		<p>在使之前,请您务必审慎阅读、充分(以下简称“本协议”),特别、法律适用和争议解决条款。限制或免除责</p>
		<p>您同意据需要不时地修改本协议或根据本协议制定、修改各类配套协议或具体规来的后的条款。</p>
     </div>
</div>`

解决方案:

var pc_xieyi = “<div class=‘pc_black’></div>“

将字符串写成一行!外边用双引号,里边用单引号!

var pc_xieyi = “<div class=‘pc_black’>此处很多标签和文本</div>“

如何将标签和文本放在一行呢?用css压缩工具!

https://tool.oschina.net/jscompress

完美解决~

当然,如果你的是mvvm框架就不会有这些困扰。

 

推荐阅读