httpVueLoader使用示例(用于cdn引入vue2后在html文件中使用组件开发)

前言:现在在维护公司的老项目,用的原生+jq开发,太麻烦,我就引入了vue2,但是发现无法组件开发,代码也不是多好看,首页代码更是好几千行。于是找了这个在html上也能导入并使用vue组件的办法。

首先百度下载httpVueLoader.js,没有的话新建js文件粘贴也行,代码有点长,放最后面了,先放上使用代码

html文件(样式啥的直接忽略,懒得删了):

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title></title>
  <meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no, minimal-ui"/>
  <meta name="apple-mobile-web-app-capable" content="yes"/>
  <meta name="apple-mobile-web-app-status-bar-style" content="black"/>
  <meta name="format-detection" content="telephone=no, email=no"/>
  <link rel="stylesheet" href="../../store/css/vant2.css">
  <script type="text/javascript" src="../../store/plugin/jquery-3.4.1.min.js"></script>
  <script src="../../store/js/vue.min.js" type="text/javascript" charset="utf-8"></script>
<!--  引入vue文件子组件必备js-->
  <script src="js/httpVueLoader.js" type="text/javascript" charset="utf-8"></script>
  <script type="text/javascript" src="../../store/js/vant2.js"></script>
</head>
<style>
  [v-cloak] {
    display: none;
  }
  *{
    margin: 0;
    padding: 0;
    /* 设置的边框和内边距的值时包含在总宽高内的 */
    box-sizing: border-box;
  }
  /*隐藏滚动条*/
  ::-webkit-scrollbar {
    display: none
  }
  /*看那个加载更多显示的位置对不对而改样式*/
  .layui-flow-more{
    width: 100%;
    /*position: absolute;*/
  }
  .layui-carousel-ind{
    /*text-align: left;*/
    /*padding-left: 3vw;*/
  }
  .layui-carousel-ind ul{
    background: none;
  }
  .layui-carousel-ind li{
    width: 20px;
    height: 6px;
    border-radius: 5px;
  }


  /*超出隐藏,三个点显示文字样式*/
  /*overflow:hidden;*/
  /*text-overflow:ellipsis;*/
  /*white-space:nowrap;*/
  /*本页面样式*/
</style>
<body style="width: 100vw;max-height: 100vh;overflow: auto;background-color: #f8f8f8">
<!--class="maxTitle-white"-->
<div id="app" style="position: relative;width: 100vw;" v-cloak>
//可以通过this.$refs.remark.getData(value)来操作子组件参数或方法
  <remark ref="remark"></remark>
</div>
</body>
<script>
  let app = new Vue({
    el:'#app',
    /* 引入vue文件作为测 组件  */
    components: {
      'Remark': httpVueLoader('components/remark.vue')
    },
    // 传递给子组件孙组件的属性,第一个是参数,后面三个是方法,都是一样的传递方式。
     provide(){
        return{
            topsrcoll: this.topsrcoll,
            goThumbnailVideo: this.goThumbnailVideo,
            goThumbnail: this.goThumbnail,
            setTop: this.setTop,
        }
     },
    //数据
    data(){
      let u = navigator.userAgent;
      return {
        isWx: window.navigator.userAgent.toLowerCase().match(/MicroMessenger/i) == 'micromessenger',
        isAndroid: u.indexOf("Android") > -1 || u.indexOf("Adr") > -1,
        isiOS: !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/),
        title: "",
      }
    },
    //方法
    methods:{
      // 修改评论子组件的文章id
      // app.$children.
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值