为了账号安全,请及时绑定邮箱和手机立即绑定
  • webpack4 不需要 使用 webpack.DefinePlugin定义 process.env.NODE_ENV

    使用--mode参数配置即可

    查看全部
  • npm i post-css-loader autoprefixer babel-loader babel-core

    查看全部
  • 2019.07.12

    由于版本问题,报错的同学请将webpack.config.js改成这样:

    const path = require('path');

    const VueLoaderPlugin = require('vue-loader/lib/plugin')


    module.exports = {

    entry: path.join(__dirname, 'src/index.js'),

    output: {

    filename: 'bundle.js',

    path: path.join(__dirname, 'dist')

    },

    plugins: [

    new VueLoaderPlugin()

    ],

    module: {

    rules:[

    {

    test: /\.vue$/,

    loader: 'vue-loader'

    },

    {

    test: /\.css$/,

    use: ['style-loader','css-loader']

    }

    ]

    }

    }


    查看全部
    1. npm init初始化项目,默认配置,自动生成package.json

    2. cnpm i webpack vue vue-loader/cnpm i css-loader vue-template-compiler

    3. 在package.json中添加"build": "webpack --config webpack.config.js";添加webpack.config.js并配置

    4. cnpm run build报错,修改如下:

      1. 添加const {VueLoaderPlugin}=require('vue-loader');

        module.export={...,plugins:[new VueLoaderPlugin()]...}

      2. 添加module.export={...,module:{rules:[{test:/.vue$/,loader:'vue-loader'},{test:/.css$/,use:['vue-style-loader','css-loader']}]}}

    5. cnpm run build提示:需安装webpack-cli,通过cnpm i --save-dev webpack-cli@3.3.0进行安装

    6. cnpm run build警告:the 'mode' option has not been set,webpack will fallback to 'production' for this value....修改package.json中"build": "webpack --config webpack.config.js"为"build": "webpack --mode development"

    7. cnpm run build正确

    查看全部
  • 为什么要把第三方类库和业务逻辑代码分离打包?
    如果把业务逻辑代码和第三类库打包到一起,整个类库代码就需要随着业务代码的更新而更新,这样类库代码就不能在浏览器里进行缓存。

    为了尽可能的使用浏览器缓存来减少服务器流量,以及用户加载速度更快,所以单独拆分出来进行打包

    查看全部
  • vue工程的搭建

     npm init

    1、npm i webpack vue vue-loader

    2、npm i css-loader vue-template-compiler

    3、新建src目录并在src下新建app.vue

    4、在app.vue中编写vue组件

    5、在根目录下新建webpack.config.js



    查看全部
  • 项目搭建文档

    代码中具体细节都有详细注释

    1.vue+webpack项目工程配置

    npm init 初始化一个npm项目
    npm i webpack@3.10.0 vue@2.5.13 vue-loader@13.6.0 安装webpack和vue,使用vue要安装vue-loader
    npm i css-loader@0.28.7 vue-template-compiler@2.5.13 根据终端WARN提示安装css-loader,因为vue-loader依赖css-loader //针对各版本做了详细指定,由于更新过快,避免版本差异性问题,故指定了版本

    在app.vue中书写基本的vue结构

    首先在webpack.config.js设置入口entry
    声明我们的入口文件index.js

    示例中app.vue实际是一个组件,组件是不能直接挂载到我们的html中去,需要在index.js中挂载

    webpack.config.js同样设置出口文件bundle.js及存放路径

    配置完后,在webpack.config.js中配置build脚本, --config 指定我们的config文件 因为在这里面写,当你调用时才会调用这个项目里面的webpack,否则将会调用全局的webpack,全局webpack和项目中的版本可能存在差异,建议使用这种方式会好一点

    webpack对其他类型的文件处理,可在配置文件中配置rules规则. 同样根据配置中的处理的loader都要安装. npm i style-loader@0.19.1 url-loader@0.6.2 file-loader@1.1.6

    stylus的css预处理器 npm i stylus-loader@3.0.1 stylus@0.54.5 同理其他的像sass,less等其他的预处理器都可以类似的方法去使用

    查看全部
  • css文件抽取分离 npm i extract-text-webpack-plugin

    但是webpack4中已经无法使用extract-text-webpack-plugin。

    这里对应的地方,可以修改成

     npm install --save-dev mini-css-extract-plugin

    config.module.rules.push({
        test: /\.styl/,
        use: [
        {
            loader: MiniCssExtractPlugin.loader,
            options: {publicPath: '../'}
         },
         'css-loader',
         {
             loader: 'postcss-loader',
             options: {sourceMap: true}
          },
          'stylus-loader'
          ]
        }
     )


    config.plugins.push(new MiniCssExtractPlugin({filename: 'style.[contentHash:8].css'}))


    查看全部
  • jsx的export default里,

    data()下的return跟的是花括号,

    render()下的return跟的是圆括号。

    哦,真的是要被自己蠢哭了。


    查看全部
  • hash与chunkhash的区别:

    hash是整个项目的哈希,只有一个

    chunkhash是分类打包会生成不一样的hash

    目的:为了让非业务代码可以在浏览器内实现长缓存。

    查看全部
  • 如何在jsx里面写循环

    <div id="footer">

         {  

            [1,2,3].map((a) => {

            return <div>{a}</div>

            })

         }

         <span>{this.author} CODEING</span>

       </div>


    查看全部
  • hot:true//热加载;

    historyApiFallback:true;//返回;

    open:true//每次编辑都打开新网页

    查看全部
  • 一、npm i postcss-loader autoprefixer babel-loader babel-core

    二、postcss帮我们后处理css,autoprefixer:需要为浏览器加前缀属性的, babel:演示如何使用render,vue可以写jsx代码

    三、npm i babel-preset-env babel-plugin-transform-vue-jsx

    四、npm i babel-helper-vue-jsx-merge-props babel-plugin-syntax-jsx

    查看全部
  • const path = require("path");

    module.exports = {

    "entry": path.join(__dirname, "src/index.js"),

    "output": {

    filename: "bundle.js",

    path: path.join(__dirname, "dist"),

    },

    mode: "development",

    module: {

    rules:[{

    test: /\.vue$/,

    loader: "vue-loader"

    },

    {

    test: /\.js$/,

    loader: "babel-loader"

    },

    {

    test: /\.css$/,

    use:[

    "style-loader",

    "css-loader"

    ]

    },

    {

    test: /\.styl$/,

    use: [

    "style-loader",

    'css-loader',

    "stylus-loader"

    ]

    },

    {

    test: /\.(jpg|png|gif|svg|jpeg)$/,

    use:[

    {

    loader: "url-loader",

    options:{

    limit: 1024,

    name:'[name]-aaa.[ext]'

    }

    }

    ]

    }

    ]

    }

    }


    查看全部
  • 在packag.json中设置build:防止调用全局的webpack,而只引自己文件里面的。版本不同,先测试! 此课程录制于2017-12-21
    查看全部

举报

0/150
提交
取消
课程须知
1、对es6语法有基本了解 2、了解前端工程化 3、了解vuejs
老师告诉你能学到什么?
1、通过webpack搭建vue工程workflow 2、哪些是学习vue的重点 3、.vue文件开发模式 4、vue使用jsx进行开发的方式 5、vue组件间通信的基本方式 6、webpack打包优化的基本点

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!