当前位置: 首页 > news >正文

在HTML当中引入Vue控件,以element-ui为例

前情:需要实现一个同时满足按天、按周、按月选择的时间选择器,但是以HTML为基础写的都不太满足我的要求,要么只能按天选择,要么就是想选择久远的时间得点很久,除非自己写捷径,所以就看上了element-ui的这个时间选择器。

其实要想用的话很简单,先引入vue和element-ui的js和css。

这里我用的是本地的js引入,地址分别为:【vue这个可能连不上,可以自己去找。

https://cdn.jsdelivr.net/npm/vue/dist/vue.js

<!-- 引入样式 -->
<link rel="stylesheet" href="https://unpkg.com/element-ui/lib/theme-chalk/index.css">
<!-- 引入组件库 -->
<script src="https://unpkg.com/element-ui/lib/index.js"></script>

下载到本地后引入:

<script type="text/javascript" src="../static/js/vue.js"></script>
<!-- 引入样式 -->
<link rel="stylesheet" href="../static/css/element-ui-index.css">
<!-- 引入组件库 -->
<script src="../static/js/index.js"></script>

要注意的点是vue必须在element-ui上面,我这个css改名了主要是我原本就有一个index的css了,如果和我情况不一样的话可以维持原来的名称不变。

然后在需要此vue组件生效的区域定义一个div标签,等会用js初始化,比如我这个时间选择器在顶部,我就拿个id为app的div包裹起来,然后new一个Vue。

 <div class="container" id="app"><div class="block"><span class="demonstration">周</span><el-date-pickerv-model="value1"type="week"format="yyyy 第 WW 周"placeholder="选择周"></el-date-picker></div></div>
<script>new Vue({el: '#app',data: function() {return {value1:""}}})</script>

到这里基本OK了,但是我遇到了以下几个问题,也许你也会遇到:

1.vue版本和element-ui版本不匹配的问题:

报错内容:Uncaught SyntaxError: Unexpected token '<'

我刚开始用的是vue3,出现了index.js无法读取的问题,然后把vue降为2就可以了,如果一定要用vue3的话,element-ui首页有讲相关方法,可以自己去查。【我没用过,但是估计就和我的在html中引入的想法相悖了,就没试

2.script 后面没加 type="module"导致的报错

这个其实忘了报的什么错了,后来加了就好了,但是我今天试了下把它去掉也能用。。

3.element-ui的模块,图标不正常显示的问题。

这个是因为我们下载的css当中没有font文件,去下载就好了。

地址:UNPKG - element-ui

下载这个地址的两个文件即可,注意要和css、js的版本一致,【不过应该一直没更新差别不大

然后如果没点进去,在外面直接右键链接另存为是不行的,下载完成之后大小明显和页面当中显示的不一样,读取会失败,最好是点进去之后然后View Raw,在新的网页右键另存为,或者有的浏览器可以直接自动下载,下载完成后对比一下文件大小。

下载完成后到你的css文件夹中新建一个fonts文件夹,把这两个文件丢进去就好了。

嗯,这个教程就到此为止了,祝你成功

和正常vue项目的区别是,因为你这个是初次使用vue,所以必须新建然后在里面写,如果按照element-ui当中的代码,export,就只会失败。

bonus:如果在vue这块的代码中引入js包,该怎么处理?

我在抄另一个代码的时候,看到用到了this.$moment,显然我们的HTML文件是不支持这样的用法的,import也是不行的,但其实可以直接用上面的方法引入js包,然后直接moment()调用方法。

http://www.lryc.cn/news/212473.html

相关文章:

  • UE5实现相机水平矫正
  • Word插入Latex语句并编译为数学公式
  • Google Play PolicyBytes 政策更新中文视频 | 2023 年 10 月
  • pytorch-fastrcnn识别王者荣耀敌方英雄血条
  • 阿里云推出通义千问App,提供全方位的协助
  • 深入解析 Spring Framework 中 @Autowired 注解的实现原理
  • 电脑数据文件恢复工具easyrecovery14中文版
  • Android NDK开发详解之Application.mk探秘
  • (草履虫都可以看懂的)PyQt子窗口向主窗口传递参数,主窗口接收子窗口信号、参数。
  • Golang Web3钱包开发指南
  • Vue使用 IndexDB vue操作IndexDB数据库 Vue操作IndexDB数据库
  • CentOS 安装 Hadoop Local (Standalone) Mode 单机模式
  • jenkins工具系列 —— 删除Jenkins JOB后清理workspace
  • 超越人眼,好用的OCR软件推荐
  • Go语言开发网站
  • 第18章_MySQL8其它新特性
  • Python爬虫实战(六)——使用代理IP批量下载高清小姐姐图片(附上完整源码)
  • 【操作系统】考研真题攻克与重点知识点剖析 - 第 1 篇:操作系统概述
  • Mac删除照片快捷键ctrl加什么 Mac电脑如何批量删除照片
  • 数据安全认证:保护您的数据安全的关键步骤
  • 表白墙/留言墙 —— 初级SpringBoot项目,练手项目前后端开发(带完整源码) 全方位全步骤手把手教学
  • 【海德教育】报考建筑八大员需要满足下列条件:
  • 酷开科技,让家庭更有温度!
  • 九州未来入选“2023边缘计算产业图谱”三大细分领域
  • centos ubantu IP一直变化,远程连接不上问题
  • 多线程---JUC
  • 事务隔离级别
  • centos7安装配置及Linux常用命令
  • C语言调用lua
  • 算法通关村第十二关黄金挑战——最长公共前缀问题解析