Intl is not defined 解决方法

问题

最近在钉钉微应用开发中,引入了一个日历控件,Android高版本钉钉真机测试出现了 Intl is not defined,然后大致了解了下这个对象.
Intl 对象是 ECMAScript 国际化 API 的一个命名空间,它提供了精确的字符串对比、数字格式化,和日期时间格式化。Collator,NumberFormat 和 DateTimeFormat 对象的构造函数是 Intl 对象的属性。本页文档内容包括了这些属性,以及国际化使用的构造器和其他语言的方法等常见的功能。
MDN web docs网站列举的此对象兼容性如下:
Intl is not defined 解决方法_第1张图片
但是打印不兼容的浏览器UA,明明也都是在兼容名单里的,有点莫名其妙.
最后尝试手动引入此对象.

Vue下的解决方法

  1. 首先使用npm安装Intl, 运行 npm install intl
  2. 然后在Vue的main.js中添加如下代码
 if(!global.Intl){
         require('intl');
         require('intl/locale-data/jsonp/zh-Hans-CN')
       }

PS. intl的locale-data中包含很多种语言时间,引入一个即可,上述引入的是中文时间.

你可能感兴趣的:(H5)