suchen

Heim  >  Fragen und Antworten  >  Hauptteil

Javascript-Lösung!

Tritt auf mich...

let handleBundleComplete = async () => {
      //不知道什么意思...
      handleBundleComplete = stats => !stats.stats[1].compilation.errors.length && runServer();

      const server = await runServer();
      const bs = browserSync.create();

      bs.init({
        ...isDebug ? {} : { notify: false, ui: false },

        proxy: {
          target: server.host,
          middleware: [wpMiddleware, hotMiddleware],
          proxyOptions: {
            xfwd: true,
          },
        },
      }, resolve);
    };

Verstehen Sie die Bedeutung dieses Schreibens nicht? Der Funktion selbst innerhalb einer Funktion einen Wert zuweisen?

let handleBundleComplete = async () => {
    handleBundleComplete = (...) => {...}
    ...
}
天蓬老师天蓬老师2822 Tage vor432

Antworte allen(2)Ich werde antworten

  • 大家讲道理

    大家讲道理2017-05-19 10:44:45

    在函数内给函数自身赋值 这种情况是会出现的
    例如这个函数:

    function oneAddTwo () {
    let result = 1 + 2
    oneAddTwo = function () {return result}
    return result
    }

    举个实际应用场景 有一个函数是判断当前是什么浏览器 这个函数里面有一堆判断逻辑 第一次执行的时候得出当前是ie浏览器 显然你如果第二次调用这个函数就没必要再去执行那一堆判断逻辑 只需要直接返回ie就行了
    那么这种时候在这个函数里面可以在第一次执行完之后将自身赋值为另外一个新函数 这个新函数直接返回ie就行了

    Antwort
    0
  • 迷茫

    迷茫2017-05-19 10:44:45

    handleBundleComplete是一个变量
    只不过这个变量一开始赋值为一个函数.
    然后调用时候.这个变量再次被赋值为另一个函数.
    不就是个赋值吗.

    Antwort
    0
  • StornierenAntwort