• 三、vue.js 钉钉H5应用 流程记录


    一、创建项目DD项目(vue.环境配置

    vue init webpack dd

    注意点:创建项目时注意不要使用ESLint 

     

     创建完成使用vscode打开,目录结构如下图1,control+shift+y 打开控制台,终端中输入 npm run dev 启动项目,结果如下图2

         

     二、钉钉H5应用

    1.根据文档,安装 dingtalk-jsapi:

     

    2..根据文档,对代码做出如下改动:

    在src-components-HelloWorld.vue中

      1 <template>
      2   <div class="hello">
      3     <h1>{{ msg }}</h1>
      4     <h2>Essential Links</h2>
      5     <ul>
      6       <li>
      7         <a
      8           href="https://vuejs.org"
      9           target="_blank"
     10         >
     11           Core Docs
     12         </a>
     13       </li>
     14       <li>
     15         <a
     16           href="https://forum.vuejs.org"
     17           target="_blank"
     18         >
     19           Forum
     20         </a>
     21       </li>
     22       <li>
     23         <a
     24           href="https://chat.vuejs.org"
     25           target="_blank"
     26         >
     27           Community Chat
     28         </a>
     29       </li>
     30       <li>
     31         <a
     32           href="https://twitter.com/vuejs"
     33           target="_blank"
     34         >
     35           Twitter
     36         </a>
     37       </li>
     38       <br>
     39       <li>
     40         <a
     41           href="http://vuejs-templates.github.io/webpack/"
     42           target="_blank"
     43         >
     44           Docs for This Template
     45         </a>
     46       </li>
     47     </ul>
     48     <h2>Ecosystem</h2>
     49     <ul>
     50       <li>
     51         <a
     52           href="http://router.vuejs.org/"
     53           target="_blank"
     54         >
     55           vue-router
     56         </a>
     57       </li>
     58       <li>
     59         <a
     60           href="http://vuex.vuejs.org/"
     61           target="_blank"
     62         >
     63           vuex
     64         </a>
     65       </li>
     66       <li>
     67         <a
     68           href="http://vue-loader.vuejs.org/"
     69           target="_blank"
     70         >
     71           vue-loader
     72         </a>
     73       </li>
     74       <li>
     75         <a
     76           href="https://github.com/vuejs/awesome-vue"
     77           target="_blank"
     78         >
     79           awesome-vue
     80         </a>
     81       </li>
     82     </ul>
     83   </div>
     84 </template>
     85 
     86 <script>
     87 import * as dd from 'dingtalk-jsapi';//引入dingtalk-jsapi
     88 export default {
     89   name: 'HelloWorld',
     90   data () {
     91     return {
     92       msg: 'Welcome to Your Vue.js App'
     93     }
     94   },
     95   mounted:function(){
     96     dd.ready(function() {
     97     // dd.ready参数为回调函数,在环境准备就绪时触发,jsapi的调用需要保证在该回调函数触发后调用,否则无效。
     98     dd.runtime.permission.requestAuthCode({
     99         corpId: "dingxxxxxxxxxxxxxxxc288",//修改为自己的corpID
    100         onSuccess: function(result) {
    101         /*{
    102             code: 'hYLK98jkf0m' //string authCode
    103         }*/
    104         },
    105         onFail : function(err) {}
    106   
    107     });
    108 });
    109 dd.error(function(error){
    110        /**
    111         {
    112            errorMessage:"错误信息",// errorMessage 信息会展示出钉钉服务端生成签名使用的参数,请和您生成签名的参数作对比,找出错误的参数
    113            errorCode: "错误码"
    114         }
    115        **/
    116        alert('dd error: ' + JSON.stringify(error));
    117 });
    118   }
    119 }
    120 </script>
    121 
    122 <!-- Add "scoped" attribute to limit CSS to this component only -->
    123 <style scoped>
    124 h1, h2 {
    125   font-weight: normal;
    126 }
    127 ul {
    128   list-style-type: none;
    129   padding: 0;
    130 }
    131 li {
    132   display: inline-block;
    133   margin: 0 10px;
    134 }
    135 a {
    136   color: #42b983;
    137 }
    138 </style>
    View Code

    3.测试页面:

     页面还是vue的页面,但是报错了,原因是当前不是钉钉环境;

     

     三、配置钉钉H5应用环境

    1.创建H5应用

     2.配置开发管理

    服务器出口IP可以直接写自己的IP;

    应用首页地址和PC端首页地址 就是当前应用地址(当前访问地址为localhost:8080,http://joylixiuming.vaiwan.com/#/ 对localhosthost:8080做了内网穿透下一节会讲到

    3.配置权限管理:保证你有权限开发;

    4.配置监控中心:

     

    5.版本管理和发布:发布版本;

    6.在微应用调试工具—RC版(windows)中查看:

    如果没有显示在OA工作台中,尝试清除缓存,点击自己的头像,找到系统设置,清除缓存即可;

     

    7.测试应用:

    点击 当前应用图标显示如下。调试 鼠标左键,然后F12 就可以调试了

      

     

    四、应用首页地址和PC端首页地址的内网穿透

    文档地址https://developers.dingtalk.com/document/resourcedownload/http-intranet-penetration?pnamespace=app

    1.下载工具

    1 git clone https://github.com/open-dingtalk/pierced.git

    也可以直接浏览器下载:https://github.com/open-dingtalk/pierced.git比较快;

    目录结构为:

     

    2.windows cmd 打开 pierced

    1 cd windows_64
    2 ding -config=ding.cfg -subdomain=abcde 8080

    这里的ding.cfg -subdomain=abcde 8080,abcde为自定义的;比如我自定义了joylixiuming

     此处http://joylixiuming.vaiwan.com 代理了localhost:8080 的意思,所以http://joylixiuming.vaiwan.com 和localhost:8080效果是一样的;

    3.测试穿透结果

     如果页面显示  Invalid Host header;需要在 build-webpack.base.conf.js做额外配置;

     

     

     

     



    我从来不相信什么懒洋洋的自由。我向往的自由是通过勤奋和努力实现的更广阔的人生。 我要做一个自由又自律的人,靠势必实现的决心认真地活着。
  • 相关阅读:
    消除QQ表情小游戏
    图片排序
    自定义字体
    随机图片滚动
    生成500个0-1000的随机数&&数组查找—小练习
    文字搬运
    查找 替换
    BeginInvoke和EndInvoke方法
    MVC HtmlHelper用法大全
    30分钟LINQ教程 【转载】
  • 原文地址:https://www.cnblogs.com/lixiuming521125/p/15484772.html
Copyright © 2020-2023  润新知