导语:vue是近年来越来越火的前端开发框架,实习期间导师要求开发软件的过程中使用vue框架。由于刚刚接触前端开发,每次使用到vue框架中不理解的东西或是不会的知识,就会百度各种各样的问题,其中许多问题都能在CSDN上得到启发。使用vue框架的过程中遇到了许许多多的问题,一个又一个坑,,,有时候一个问题的出现会花费我半天的时间去解决和思考,毕竟是自学,所以每一步都很小心,每次增加一个小功能就会认真调试,看看有没有错误出现。今天我就来总结一下我在解决在vue前端框架页面里添加时间选择器的问题。

  由于业务需要,有必要在页面上添加两个时间选择器来确定查询时间区间。我首先想到了百度一个有源代码的日期选择器来参考,果然百度上格式化样的时间选择器令我眼花缭乱,在GitHub上下载了完整源代码然后开始往自己项目上转,然后。。。。各种问题各种报错。我发现我参考的代码是运行在jquer框架上的,可是,我强大的好奇心和求知驱使我进一步解决如何在vue框架上使用jquer内容的问题。

如下所示,我参考了csdn上许多博客

https://blog.csdn.net/qq_16399991/article/details/65630566

https://blog.csdn.net/qq_32496215/article/details/81292051

以及许多其他文章

https://segmentfault.com/a/1190000007020623

http://618cj.com/2016/08/24/vue-cli%E6%80%8E%E4%B9%88%E5%BC%95%E5%85%A5jquery/

其中许多是这样说的:

vue引入jquer以及jquery插件步骤

第一步:安装jque

npm install jquery 

cnpm install jquery(淘宝镜像)

第二步:在package.json中添加

dependencies:{
"jquery" : "2.2.3"
}

第三步:使用vue-cli构建的vue项目,webpack的配置文件是分散在很多地方的,而我们需要修改的是build/webpack.base.conf.js,修改两处的代码

// 在开头引入webpack,后面的plugins那里需要
var webpack = require('webpack')
// resolve

module.exports = {
   // 其他代码...
   resolve: {
      extensions: ['', '.js', '.vue'],
      fallback: [path.join(__dirname, '../node_modules')],
      alias: {
          'src': path.resolve(__dirname, '../src'),
          'assets': path.resolve(__dirname, '../src/assets'),
          'components': path.resolve(__dirname, '../src/components'),

          // webpack 使用 jQuery,如果是自行下载的
          // 'jquery': path.resolve(__dirname, '../src/assets/libs/jquery/jquery.min'),
          // 如果使用NPM安装的jQuery
          'jquery': 'jquery' 
      }
   },

   // 增加一个plugins
   plugins: [
      new webpack.ProvidePlugin({
          $: "jquery",
          jQuery: "jquery"
      })
   ],

   // 其他代码...
}

第四步:重新dev项目文件

第五步:在main.js文件中引入jquery

import $ from "jquery";

最后就能在文件内使用了。

以上是我步入的第一个大坑。。。。。。。。。。。。

按照上诉描述完成后,webstorm一直报错,其他的错误太长看不懂,但有一条是很明确的:$ is not defined!

意思是$没有定义,没办法,接着百度。以下答案来自百度,个人不建议参考:

1.首先,"$"这个符号是在jquery中定义的。所以你要看一下,你有没有引入jquery的js文件。

2.大部分插件都是依赖于jquery而存在的,我说大部分并不夸张。哪怕说所有都不为过。所以在引入js文件的时候,你要注意引入的顺序。将jquery.js的文件放在最前面

3.网上百度这个错误,基本上都是上面这两个结果。大家也可以看出来。从我的图片上来看,我并没有犯这两个错误。那我的错误是什么呢?

我抱着试一试的心态。换了一个jquery.js文件,居然就成功了。自己想想也是,好多jquery的文件都是错误的,特别是从菜鸟教材上下载的

我突然觉得这个坑太深了,于是决定换一个方法。

把前面的代码全部清除了之后,我开始寻找新的方法。

一直在找一个在vue框架中创建的日期选择器代码,最后找到了这个:vue写的一个时间选择器组件

https://www.vue-js.com/topic/59415422fbaee51e2432c393

从大神的github上下载了完整的代码Date-Pickers

接下来我就进入了另外一个坑,应该说是我自己的原因。。。。

我试图把他的整个项目导入我的项目文件,将所有文件包括js,style,.vue,index.html全部加到我现有项目中,但是这是两个完整的项目,如何整合呢???  通过百度我发现是我想太多了,这是不可能的,毕竟刚刚接触这个东西,对他的理解还不是很深。中间的小坑我就不再赘述了,直接说正确的做法。

将他的.vue文件分解为三部分:html,js,cs

分别对应添加到自己原来.vue文件的相应三个位置(一 一对应),进行到这个程度,问题已经解决了一大部分,还剩下什么问题呢?

我们运行来看看,,,,

??????,这个  是来搞笑的吗?

我以为我又要放弃了,但好奇心驱使我把这段错误提示复制下来放在百度搜索框里面,

哈哈哈,没想到 还真的有这个问题

vue-cli的项目 style lang="scss" 写 scss样式报错

答主同样来自我们CSDN,看来这个地方真是人才济济。

解决方案:

安装以下依赖就可以了,vue-cli默认没有scss-loader,scss-loader又需要node-sass,只安装scss-loader是不行的。另外webpack就不需要配置了,因为vue-cli会帮你配置安装的loader

"node-sass": "^4.5.1",
    "sass-loader": "^6.0.3",
    "scss": "^0.2.4",
    "scss-loader": "^0.0.1",

1.npm install node-sass --save

2.npm install sass-loader --save

3.npm install scss --save

4.npm install scss-loader --save

最后重新dev一下,OK

终于没有报错了     欢喜

来看一下我们的成果:

   感谢各位大神的博客。

 

Logo

前往低代码交流专区

更多推荐