在Nuxt.js中将“ monkeypatches”放在哪里?

问题描述

我在哪里可以在Nuxt框架中的基本javascript对象的原型中放置“ monkeypatches”和“我的扩展名”,以使其功能可访问性覆盖所有文件

例如:

https://api-d.docusign.net/management/v2/

解决方法

这是原型污染,是一种不良做法。有更好的方法来共享公用功能:

  1. 将它们放入实用程序文件中(例如,在utils/helpers.js下,然后从那里导入
  export const capitalize = s => s.replace(/\w\S*/g,txt => txt.charAt(0).toUpperCase() + txt.substr(1).toLowerCase()
  )
  1. 使用Nuxt插件来inject帮助函数,因此它在所有组件中都可用(尽管这里可能有点过大)。参见here

我强烈建议避免原型污染。

,

您好,您可以使用代码示例创建一个~/plugins/my-extensions.js文件。该代码将运行一次(服务器端和客户端也是如此),并将使您的扩展方法随处可见。

不要忘记在nuxt.config.js中注册您的插件:

export default {
  plugins: ['~/plugins/my-extensions.js']
}