zoukankan      html  css  js  c++  java
  • 关于导入zepto出错的问题

    一、前言

     webpack在配置多页面开发的时候 ,发现用 import 导入 Zepto 时,会报 Uncaught TypeError: Cannot read property 'createElement' of undefined 错误,导致无法使用 Zepto。

    二、解决方案

      1、引入script-loader  exports-loader

      cnpm install script-loader exports-loader -S

      2、在module.exports中配置

      

    复制代码
    module: {
        rules: [
          {
            test: require.resolve('zepto'),
            loader: 'exports-loader?window.Zepto!script-loader'
          }
       ]
      }  
    复制代码

      3、这样我们在页面入口文件中就可以引入了

           import $ from "zepto"

    三、webpack.ProvidePlugin  

      如果你不想写 import $ from 'zepto',并且想用其他变量来代替 Zepto。 可以使用官方的一个插件:webpack.ProvidePlugin。

      webpack.ProvidePlugin 是一个依赖注入类型的插件,可以让你在使用指定变量时,比如直接使用 $ 时,自动加载指定的模块 zepto,并将其暴露的对象赋值给 $

      

    复制代码
    plugins: [
        new webpack.ProvidePlugin({
          $: 'zepto',
          // 把 Zepto 导入为 z 变量也可以
          z: 'zepto'
        })
        // ...
      ]
     
  • 相关阅读:
    POJ 3253 Fence Repair
    POJ 2431 Expedition
    NYOJ 269 VF
    NYOJ 456 邮票分你一半
    划分数问题 DP
    HDU 1253 胜利大逃亡
    NYOJ 294 Bot Trust
    NYOJ 36 最长公共子序列
    HDU 1555 How many days?
    01背包 (大数据)
  • 原文地址:https://www.cnblogs.com/Lin461179097/p/10312962.html
Copyright © 2011-2022 走看看