'drupalSettings' 未定义 no-undef

'drupalSettings' is not defined no-undef

我有一个单页应用程序,我想在特定内容类型的每个 drupal 节点中 运行。

该应用程序是使用 yarn 在 react 中制作的。

在我的 index.js 文件中,我尝试执行以下操作:

if(window.location.href !== 'http://localhost:3002/') {
  console.log(drupalSettings);
}

但是 npm run buildyarn build 都给我 'drupalSettings' is not defined no-undef

如何强制 npm/yarn 忽略此警告?

当你使用 yarn 或类似的东西时,你需要让 eslint 知道变量来自全局范围。来自 eslint docs:

/*global someFunction b:true*/
/*eslint no-undef: "error"*/

var a = someFunction();
b = 10;

其中b:true表示b可以在此文件范围内更改。对于 drupalSettings 之类的内容,:true 可能是可选的,因为您很可能从页面中提取信息而不设置任何内容。

对于您的特定用途,您将使用

/*global drupalSettings:true*/
/*eslint no-undef: "error"*/

console.log(drupalSettings)

您会在浏览器的控制台中看到输出。