全局包含原型功能(react)



我有以下函数可以快速替换字符串中的单词(多次出现(:

String.prototype.replaceAll = function (search, replacement) {
var target = this;
return target.replace(new RegExp(search, 'g'), replacement);
};

此功能按预期工作。我在多个组件(文件(和函数中需要这个函数,所以我直接在每个文件的开头添加这个函数。有没有一个简单的解决方案可以将这类函数全局地包含到项目中,而无需将其单独添加到每个文件中?

编辑:

// strings.js
import React from 'react';
String.prototype.replaceAll = function (search, replacement) {
var target = this;
return target.replace(new RegExp(search, 'g'), replacement);
};

我应该导出此函数还是如何导入此函数?我可以在App.js的顶部添加import strings.js吗?

如果您修改了字符串原型,您的工作就完成了。该功能将立即在任何地方提供。然而,您应该注意,修改String等类型的原型是不可取的:https://flaviocopes.com/javascript-why-not-modify-object-prototype/

此外,如果您使用TypeScript,如果不将字符串强制转换为您自己的某种类型,您将无法看到新函数。

最新更新