diff --git a/lib/rules/jsx-no-target-blank.js b/lib/rules/jsx-no-target-blank.js
index cd59296de7..92ad283487 100644
--- a/lib/rules/jsx-no-target-blank.js
+++ b/lib/rules/jsx-no-target-blank.js
@@ -88,7 +88,8 @@ function hasSecureRel(node, allowReferrer, warnOnSpreadAttributes, spreadAttribu
const relAttribute = node.attributes[relIndex];
const value = getStringFromValue(relAttribute.value);
const tags = value && typeof value === 'string' && value.toLowerCase().split(' ');
- return tags && (allowReferrer ? tags.indexOf('noopener') >= 0 : tags.indexOf('noreferrer') >= 0);
+ const noreferrer = tags && tags.indexOf('noreferrer') >= 0;
+ return (allowReferrer ? noreferrer || (tags && tags.indexOf('noopener') >= 0) : noreferrer);
}
module.exports = {
diff --git a/tests/lib/rules/jsx-no-target-blank.js b/tests/lib/rules/jsx-no-target-blank.js
index b845ba60dd..703168aef1 100644
--- a/tests/lib/rules/jsx-no-target-blank.js
+++ b/tests/lib/rules/jsx-no-target-blank.js
@@ -103,6 +103,10 @@ ruleTester.run('jsx-no-target-blank', rule, {
code: '',
options: [{allowReferrer: true}]
},
+ {
+ code: '',
+ options: [{allowReferrer: true}]
+ },
{
code: ''
}
@@ -212,6 +216,12 @@ ruleTester.run('jsx-no-target-blank', rule, {
output: '',
errors: defaultErrors
},
+ {
+ code: '',
+ output: '',
+ options: [{allowReferrer: true}],
+ errors: defaultErrors
+ },
{
code: '',
output: '',