vue引用public中的js文件

背景

由于一些演示,需要对编码名称等可快速进行修改,需要页面方便配置。由于build后的vue项目基本已经看不出原样,因此需要创建一个文件,并在打包的时候不会进行编译。

步骤

  1. 在public文件夹下创建config.js文件,里面文件的语法是es5,不允许使用浏览器不能兼容的es6语法。因为该文件不进行编译,es6部分语法浏览器不兼容。

  2. 在html文件下,使用<scrtipt>标签进入。

  3. 在页面直接按照原生的方法使用即可。

例如config.js定义了一个变量叫config,并在index.html页面引入后,那么在页面任何一处地方都可以直接使用。   
config.js:

/*自定义全局变量,此文件不编译,因此需要用原生的写法*/
let config = {
  networkGuard:{
    accountDBID: '9E54B0CA55E447148211ACEA6F911FBC',// 账号表,网警数据-身份证账号关联
    countDBQry: [   // 账号表搜索条件,需要和数据表的搜索条件进行关联
      {fieldCode: "account", fieldName: "账号", searchRule: "LK", javaType: "varchar", similar: 0, fieldValue:''},  // fieldValue需要页面输入赋值查询
      {fieldCode:"update_time", fieldName:"更新时间", searchRule:"BET", javaType:"datetime", similar:0, min:"2017-01-01 00:00:00",max:''}  // max为当天时间:23:59:59
    ],
  }
}



index.html:

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
    <link rel="icon" href="<%= BASE_URL %>favicon.ico">
    <title><%= webpackConfig.name %></title>
  </head>
  <body>
    <div id="app"></div>
  </body>
  <script src="./config.js" type="text/javascript"></script>
</html>



页面使用:

queryFun() {
       if(!this.mobile) {
         return false
       }
       // 验证表达式不是电话号码不给进入
       const reg = /^[1][3,4,5,7,8][0-9]{9}$/
       if(!reg.test(this.mobile)) {
         this.$message({ showClose: true, message: '请输入正确的手机号码!', type: 'warning' })
         return false
       }
       config.networkGuard.countDBQry[0].fieldValue = this.mobile
       Object.assign(this.listQuery,{
         dataBaseId: config.networkGuard.accountDBID,
         params: config.networkGuard.countDBQry
       })

个人错误记录

在开发环境中,我在public下创建了config.js文件,并且用export default方法进行导出。在页面使用的地方使用import config from XXX进入引入。开发过程中,没有出问题,但是在打包发布以后,发现修改config文件并不生效。

经过排查才意识到:不打包编译的js文件不识别es6语法,并且不应该使用import方法进行引入,应该按照原生的js文件进行使用。


原文地址:https://www.cnblogs.com/luoxuemei/p/11926472.html

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 写在开头 先说说为什么要写这篇文章, 最初的原因是组里的小朋友们看了webpack文档后, 表情都是这样的: (摘...
    Lefter阅读 10,689评论 4 31
  • 前言 首先,当我们编写代码时,不通过模块化的思想想要引入一个js,通常是在html文件中创建一个script标签,...
    zouCode阅读 6,959评论 0 1
  • 在现在的前端开发中,前后端分离、模块化开发、版本控制、文件合并与压缩、mock数据等等一些原本后端的思想开始...
    Charlot阅读 10,842评论 1 32
  • 前言 本文主要从webpack4.x入手,会对平时常用的Webpack配置一一讲解,各个功能点都有对应的详细例子,...
    BetterChen阅读 5,941评论 0 3
  • go compile:
    dbabby阅读 1,852评论 0 0