收藏
回答

小程序引入第三方插件,无法修改全局变量?

背景:小程序运行时需要对Date变量进行修改

如:

const OldDate = Date
// 修改第一个入参,横岗改斜杠
Date = function () {
  if (arguments.length > 0 && typeof (arguments[0]) === 'string' && arguments[0].includes('-')) {
    const p = arguments[0].replace(/-/g, '/')
    arguments[0] = p
  }
  return new OldDate(...arguments)
}

原文链接:https://blog.csdn.net/milugloomy/article/details/108701448


现象:

基础库2.13.0

开发者工具和真机都无法修改,且报错[non-writable] modification of global variable 'Date' is not allowed when using plugins at app.json,删除app.json中的plugins字段正常执行

基础库2.25.0

1.开发者工具模拟器,上述代码成功执行,此时是在app.json中有plugins字段

2.真机会报错,此时是在app.json中有plugins字段。删除plugins字段后,上述代码能正常执行

我理解的是,这个问题是由于小程序引入了第三方插件,导致的全局变量无法修改。

但是开发者工具模拟器已经开放了这个限制。想问下,真机后面是否也会开放限制


类似问题:https://developers.weixin.qq.com/community/develop/doc/0000680a848be8919f7b921c756400


最后一次编辑于  2022-07-27
回答关注问题邀请回答
收藏

1 个回答

  • RedHood
    RedHood
    2022-07-28

    不会放开,有安全问题

    2022-07-28
    有用
    回复 1
    • 桃浪柒
      桃浪柒
      2022-09-15
      可以在开发版放开吗
      2022-09-15
      回复
登录 后发表内容