[英]How do I export a regex as a const in es6?
我有一個正則表達式,它在許多類中都反復使用。 這是對DRY的違反,如果將來需要更改,可能會造成痛苦。 因此,我決定將其移至通用js並導出。 下面是代碼:
const CommonValues = {
TEXT_FILTER_REGEX: /^[,.?!:"—]$/
};
export CommonValues;
導入CommonValues后,我可以這樣使用它:
let result = CommonValues.TEXT_FILTER_REGEX.test('foo,bar'));
但是無論我嘗試什么,我都會在控制台中不斷收到此錯誤:
未捕獲的錯誤:模塊解析失敗:'const'不能用作速記屬性(5:2)您可能需要適當的加載程序來處理此文件類型。
我還嘗試以相同的方式導出整數和字符串,它們都可以正常工作。 這使我想知道在導出時是否對正則表達式進行了不同的處理?
這似乎奇跡般地解決了自己。 我完全困惑。 我想這將是暫時的通貨小故障。
感謝您的任何建議。
我通過做以下工作。 我不確定您的RegExp
' /^[,.?!:"—]$/
'是做什么的,但是我嘗試使用digit
RegEx =^[0-9]$
並得到了預期的結果;
我得到的錯誤是關於在TypeScript的原型中沒有定義test()的string
類型。 只有RegExp具有。
export const Constants = {
TEXT_FILTER_REGEX: new RegExp('^[,.?!:"—]$')
}
一個正在工作的pl夫在這里
測試可以完全相同的方式進行。 您需要修剪/
並使其使用RegExp
對象。
new RegExp('UrRegexHere')
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.