小编und*_*ned的帖子

开玩笑:不能在模块外使用导入语句

使用 Jest 运行测试时出现错误,我尝试修复此错误 2 小时。但是,我无法修复它。我的模块正在使用gapi-script包,并且此包中发生错误。但是,我不知道为什么会发生这种情况以及如何解决它。

开玩笑的配置文件

module.exports = {
  "collectCoverage": true,
  "rootDir": "./",
  "testRegex": "__tests__/.+\\.test\\.js",
  "transform": {
    '^.+\\.js?$': "babel-jest"
  },
  "moduleFileExtensions": ["js"],
  "moduleDirectories": [
    "node_modules",
    "lib"
  ]
}
Run Code Online (Sandbox Code Playgroud)

babel.config.js

module.exports = {
  presets: [
    '@babel/preset-env',
  ]
};
Run Code Online (Sandbox Code Playgroud)

方法.test.js

import methods, { typeToActions } from '../lib/methods';
Run Code Online (Sandbox Code Playgroud)

方法.js

import { gapi } from "gapi-script";
...
Run Code Online (Sandbox Code Playgroud)

错误信息

C:\haram\github\react-youtube-data-api\node_modules\gapi-script\index.js:1 ({"Object.":function(module,exports,require,__dirname,__filename,global,jest){导入 { gapi, gapiComplete } from './gapiScript';

SyntaxError: Cannot use import statement outside a module
Run Code Online (Sandbox Code Playgroud)

我的设置有什么问题?

import module jestjs

16
推荐指数
3
解决办法
2万
查看次数

Sass:@use 出错,未定义变量

我正在使用 Sass 并想使用@use关键字而不是@import. 因为,@import有很多错误的问题。也只有dart-sass支持这个功能,我把node-sass改成了dart-sass。但是,出现了问题。

我的原始代码

@import '@carbon/colors/scss/colors'
Run Code Online (Sandbox Code Playgroud)

dart-sass 和@use应用代码

@use '@carbon/colors/scss/colors'
Run Code Online (Sandbox Code Playgroud)

错误:未定义的变量。

我该如何解决?

css sass dart-sass

6
推荐指数
1
解决办法
2550
查看次数

为什么 IntersectionObserver 返回的数组中 forEach 的索引始终为 0?

我正在使用 IntersectionObserver API。

当进入特定部分时,background-color会发生变化。为了处理这个问题,我必须获取此处调用的
数组中输入条目的索引。 IntersectionObserverEntryentries

我使用forEach方法来获取条目的索引,但奇怪的是它总是将索引设置为0。但是当我通过获得的索引访问条目时,它工作得很好。

const intersectionObserver = new IntersectionObserver(entries => {
  entries.forEach((entry,index) => {
    if(entry.isIntersecting) {
      console.log('Intersecting',index);
      entry.target.className = entry.target.className.replace('hidden','fadeIn');
      changeBackgroundColor(entry.target.dataset.color);
      changeLogoColor(entry.target.dataset.theme);
    } else {
      console.log('Leave',index);
      entry.target.className = entry.target.className.replace('fadeIn','hidden');
    }
  });
});
const fadeInElemes = document.querySelectorAll('.hidden');
fadeInElemes.forEach((fadeInElem) => intersectionObserver.observe(fadeInElem));
Run Code Online (Sandbox Code Playgroud)

结果如下...

相交 0
离开 0
离开 0 .....

我的代码有什么问题吗?为什么索引总是0,但是通过获取的索引访问却得到了正确的元素?

编辑

条目日志

javascript arrays intersection-observer

5
推荐指数
1
解决办法
2148
查看次数

Github:当特定分支合并到 master 时,如何通知 slack?

我有3个分行

  • 发展
  • 掌握
  • 特征

PR 的分支是功能,它将被合并到 master 中。但是,所有分支都应该先合并到develop,然后再合并到master。但是,我多次忘记了这个动作。因此,我希望在将特定分支合并到主分支之前通知 Slack。

我怎样才能实现这个?我搜索了 Github actions 或 Slack 应用程序,但找不到。

git github slack

5
推荐指数
2
解决办法
5121
查看次数