小编Gre*_*een的帖子

Webpack 在 ES5 中生成箭头函数

我想使用 TypeScript 模块并通过 Webpack 捆绑它们。这是我的配置文件:

webpack.config.js:

const path = require('path');

module.exports = () => {
    return {
        entry: './index.ts',
        output: {
            filename: 'bundle.js',
            path: path.resolve(__dirname, 'dist'),
        },
        module: {
            rules: [{
                test: /\.tsx?$/,
                use: 'ts-loader',
                exclude: /node_modules/,
            }],
        },
    };
};
Run Code Online (Sandbox Code Playgroud)

tsconfig.json:

{
  "compilerOptions": {
    "module": "commonjs",
    "target": "es3"
  },
  "include": ["./**/*"],
  "exclude": ["node_modules/**/*", "webpack.config.js"]
}
Run Code Online (Sandbox Code Playgroud)

也许我从文档中弄错了。目的是在 ES5(甚至更早版本)中生成代码。但这是我的捆绑文件:

{
  "compilerOptions": {
    "module": "commonjs",
    "target": "es3"
  },
  "include": ["./**/*"],
  "exclude": ["node_modules/**/*", "webpack.config.js"]
}
Run Code Online (Sandbox Code Playgroud)

它有一个箭头函数,这是在 ES6 中添加的。我很迷惑。我怎样才能摆脱它?


编辑:

这是我尝试编译的代码:

(()=>{var n=function(n,o){console.warn(o)};n(0,0),n(0,1)})();
Run Code Online (Sandbox Code Playgroud)

编辑2: …

javascript ecma typescript webpack

13
推荐指数
1
解决办法
1221
查看次数

为什么 CSS 光标属性不适用于样式滚动条?

我已经设计了一个滚动条,但光标指针不起作用,即使我把!important.

::-webkit-scrollbar {
  width: 0.3vw;
  height: 20px;
  padding: 2px;
  cursor: pointer !important;
}


/* Handle */

::-webkit-scrollbar-thumb {
  background-color: #808080;
  border-radius: 70px;
  padding: 2px;
  cursor: pointer !important;
}


/* Handle on hover */

::-webkit-scrollbar-thumb:hover {
  background-color: #424242;
  cursor: pointer !important;
}

::-webkit-scrollbar-track {
  background-color: transparent;
  cursor: pointer !important;
}

body {
  height: 90000px;
}
Run Code Online (Sandbox Code Playgroud)

我试过了。我不认为它起作用。你能不能帮我弄cursor: pointer::-WebKit-scrollbar。以下是您可以在其中找到滚动条和光标指针的一些链接:

1

2

3

4

5

6

7

html css

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

为什么我的反应表没有更新数据?

我有一个反应表,我想删除或修改我的数据。我的所有单元格的代码如下。

    deleteTableElement = (row) => {
        let data = this.state.list.data;
        data.splice(row.id, 1);
        this.setState({
            list:{
                ...this.state.list,
                data:data
            }
        })
    };

    actionsCell = (columns) => {
        columns.push({
            Header: "Accion",
            Cell: (props) => {
                console.log(props);
                return (
                    <div
                        style={{
                            display: "flex",
                            justifyContent: "space-around",
                        }}
                    >
                        <i
                            onClick={() => this.deleteTableElement(props.row)}
                            className="material-icons"
                            style={{ color: "red", cursor: "pointer" }}
                        >
                            delete
                        </i>
                    </div>
                );
            },
        });
        return columns;
    };
Run Code Online (Sandbox Code Playgroud)

在这种情况下,我想修改该项目。反应表没有更新。

javascript typescript reactjs react-table react-table-v7

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

在 Nuxt 应用程序中集成 Google Optimize

我正在尝试在我的 Nuxt 应用程序中使用 Google Optimize。我需要一种在任何页面组件更新后触发激活事件的方法。当前的问题是 API 可能会返回数据,并使用 API 数据在页面加载时重新渲染 DOM。之后我需要触发激活事件。用于在 SPA 中触发激活事件的 google 文档如下在单页应用程序触发激活

对于 angular 应用程序,它是通过添加来完成的

myapp.run(function($rootScope, $timeout) {
   $rootScope.$watch(function(){
     $timeout(function(){
       dataLayer.push({'event': 'optimize.activate'});
     },0,false);
   })
})
Run Code Online (Sandbox Code Playgroud)

我正在 Nuxt 应用程序中寻找类似的替代方案

我知道在组件内部,我可以updated在内容更新和 DOM 重新渲染后监听生命周期钩子。但是,当任何组件更新或 DOM 重新呈现时,我需要一种在中央位置执行某些代码的方法。

我使用的是我在目录中创建了一个全局 mixin ( globalMixin.js)plugins并使用了它的updated生命周期方法。因此,此混合代码被注入到每个组件中,并且如果这些组件数据中的任何一个发生更改,则更新方法将被调用。但我怀疑这种方法是否是理想的解决方案。

任何人都可以向我建议一种更好的方法来完成这项任务,或者 Nuxt/Vue 是否有任何标准的方法来做到这一点?里面的代码plugins/globalMixin.js如下:

if (!Vue.__my_mixin__) {
      Vue.__my_mixin__ = true
      Vue.mixin({
        updated() {
        ..execute some code
       }
     }) 
    } 
Run Code Online (Sandbox Code Playgroud)

javascript vue.js nuxt.js

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

阻止上下文菜单在页面右侧被剪切

我有一个上下文菜单,当我右键单击页面的右侧部分时,该菜单会被剪切,如下所示:

菜单在页面边缘被剪切,所以我希望菜单移动到光标的另一侧,就像在 Chrome 或其他流行应用程序中一样。我尝试访问 StackOverflow 中的其他页面并尝试一些演示,但它们都说的是上面显示的相同内容。我也尝试评论其他一些帖子,看看他们是否会回答,但仍然没有。

更新

代码:

var menu = document.querySelector('.menu');

function showMenu(x, y) {
  menu.style.left = x + 'px';
  menu.style.top = y + 'px';
  menu.classList.add('menu-show');
}

function hideMenu() {
  menu.classList.remove('menu-show');
}

function onContextMenu(e) {
  e.preventDefault();
  showMenu(e.pageX, e.pageY);
  document.addEventListener('mousedown', onMouseDown, false);
}

function onMouseDown(e) {
  hideMenu();
  document.removeEventListener('mousedown', onMouseDown);
}

document.addEventListener('contextmenu', onContextMenu, false);
Run Code Online (Sandbox Code Playgroud)
/* Page */

html {
  width: 100%;
  height: 100%;
  background: radial-gradient(circle, #fff 0%, #a6b9c1 100%) no-repeat;
}

.container {
  position: absolute;
  top: 20%;
  left: 0;
  width: 100%; …
Run Code Online (Sandbox Code Playgroud)

html javascript css contextmenu

-1
推荐指数
1
解决办法
1360
查看次数