vue小知识点汇总

vue新手,刚搭建了一个vue项目,记录下使用的相关小知识点,方便自己后期使用


1. build构建hash文件名修改

默认的vue项目中,构建后的的文件名带有hash值,可将webpack.prod.conf.js、webpack.base.conf.js文件中的hash值改成自定义值。
eg:
自定义函数(年-月-日)

function getVersion() {
  let d = new Date()
  return (d.getFullYear()) + '-' + (d.getMonth() + 1) + '-' + d.getDate()
}

css

    // extract css into its own file
    new ExtractTextPlugin({
      // filename: utils.assetsPath('css/[name].[contenthash].css'),
      filename: utils.assetsPath('css/[name].' + getVersion() + '.css'),
      allChunks: true,
    }),

fonts

      {
        test: /\.(woff2?|eot|ttf|otf)(\?.*)?$/,
        loader: 'url-loader',
        options: {
          limit: 10000,
          // name: utils.assetsPath('fonts/[name].[hash:7].[ext]')
          name: utils.assetsPath('fonts/[name].' + getVersion() + '.[ext]')
        }
      },

2. vue-router HTML5 History 模式

vue-router 默认hash模式 —— 使用 URL 的 hash 来模拟一个完整的 URL,于是当 URL 改变时,页面不会重新加载,但是该模式下URL会带#前缀。如果想要URL不带#,使用 history 模式。
eg:

export default new Router({
  mode: 'history',
  routes: [
    {
      path: '/',
      name: 'HelloWorld',
      component: HelloWorld
    }
  ]
})

具体说明参考文档:HTML5 History 模式


3. 自定义上下文地址方法

自定义domain.js文件:GetContext方法获取地址

export function GetContext() {
  this["ctx"] = "http://localhost:8080";// 这里只是测试例子,可根据不同环境进行区分环境配置
}

src/main.js:将$ctx绑定到全局

import {GetContext} from './domain'

let domain = new GetContext();
// $ctx绑定到全局
Vue.prototype.$ctx = domain.ctx

页面使用举例:

this.$axios.post(this.$ctx + '/login.do', {
          userName: this.userName,
          userPwd: this.userPwd
        }).then(response => { 
            *** 
        });
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 一、 组件component 1. 什么是组件? 组件(Component)是 Vue.js 最强大的功能之一。组...
    饥人谷_Leonardo阅读 2,029评论 0 18
  • 1. 组件的data为什么必须是函数? 组件中的 data 写成一个函数,数据以函数返回值形式定义,这样每复用一次...
    郭先生_515阅读 1,007评论 0 12
  • ## 框架和库的区别?> 框架(framework):一套完整的软件设计架构和**解决方案**。> > 库(lib...
    Rui_bdad阅读 2,979评论 1 4
  • 本文首发于TalkingCoder,一个有逼格的程序员社区。转载请注明出处和作者。 写在前面 本文为系列文章,总共...
    Aresn阅读 9,589评论 0 42
  • 33、JS中的本地存储 把一些信息存储在当前浏览器指定域下的某一个地方(存储到物理硬盘中)1、不能跨浏览器传输:在...
    萌妹撒阅读 2,112评论 0 2