Frans 6 years ago
parent
commit
28e7dc9b02
7 changed files with 46 additions and 49 deletions
  1. 1 0
      docs/intro.md
  2. 24 0
      docs/joinus.md
  3. 0 2
      sites/demo/index.html
  4. 2 37
      sites/doc/app.vue
  5. 0 2
      sites/doc/index.html
  6. 9 0
      sites/doc/router.js
  7. 10 8
      src/utils/raf.js

+ 1 - 0
docs/intro.md

@@ -55,6 +55,7 @@ NutUI是一套京东风格的移动端Vue组件库,开发和服务于移动Web
 * [案例征集](https://github.com/jdf2e/nutui/issues/16)
 * [模板工程命令行工具(Gaea CLI)](https://www.npmjs.com/package/gaea-cli)
 * 联系我们:nutui@jd.com
+* [加入我们](/joinus)
 
 
 ## 开源协议

+ 24 - 0
docs/joinus.md

@@ -0,0 +1,24 @@
+## 招聘前端开发工程师
+
+岗位职责:
+* 负责京东PLUS会员、大客户、京东ME、人资行政类项目前端开发。
+* JS组件开发,包括 NutUI、 popui、 legao等通用类库、构建工具等开发。
+* 与设计师、后台工程师紧密工作,负责产出高质量的产品前端层。
+* 通过各种前端技术手段,提高用户体验并满足性能要求。
+* 充分理解项目需求和设计需求,具有一定钻研精神,能解决各种未知问题。有较强的沟通能力和抗压能力。
+
+
+岗位要求:
+* 计算机相关专业本科以上,4年以上前端开发经验,电商相关经验优先。
+* 精通各种Web前端技术,对符合Web标准的网站重构有丰富经验,有成功作品。
+* 掌握JS语言,ES6+,对JS框架( jQuery/Vue/ React)有实际项目经验。
+* 对CSS/JS性能优化、解决多浏览器兼容性问题有一定的经验。
+* 有基于Node的常见构建工具如Gulp、Rollup、 Webpack的实际项目经验。
+* 对用户体验、交互操作流程、及用户需求有一定了解。
+* 具备良好的服务意识、责任心及学习能力、优秀的团队沟通与协作能力。
+* 职级T5-T8,需要符合二五原则(各段平均工作年限需满2年)。
+
+
+职位诱惑:
+* 工作地点:北京亦庄京东集团总部。公司有免费班车,班车点基本覆盖全北京,距离不是距离
+* 公司福利:5层食堂、超大面积免费健身房(器械、跑步机、健身教练)、年假、带薪病假、大楼各种羊毛薅、各种内购内销、饮料零食…

+ 0 - 2
sites/demo/index.html

@@ -43,8 +43,6 @@
       var jaq = jaq || [];
       jaq.push(['account', 'JA2018_1831300']);
       jaq.push(['domain', 'jd.com']);
-      jaq.push(['anchorpvflag', 'true']);
-      jaq.push(['anchorToUri', 1]);
       (function () {
         var ja = document.createElement('script');
         ja.type = 'text/javascript';

+ 2 - 37
sites/doc/app.vue

@@ -63,17 +63,7 @@
       <div class="foot">
         Copyright © 2018~2019
         <a href="//jdc.jd.com" target="_blank">JDC</a>-
-        <a target="_blank" class="qrcode2" href="javascript:;">前端开发部
-            <a>
-                <img
-                  src="./asset/css/i/explor.png"
-                  alt
-                >
-               <svg class="strange" width="10" viewBox="0,0 6,5">
-                 <polygon points="0,0 3,5 6,0" fill="#fff"/>
-               </svg>
-              </a>
-        </a>
+        <a target="_blank" href="javascript:;">前端开发部</a>
       </div>
     </div>
   </div>
@@ -492,32 +482,7 @@ body {
 .docpad{
    padding: 8px 200px 8px 0;
 }
-.qrcode2{
-  position: relative;
-  &:hover{
-   a{
-      display: block;
-   }
-  }
-  a{
-    position: absolute;
-    line-height: 12px;
-    background: #fff;
-    color: #333;
-    bottom:25px;
-    left: -30px;
-    font-size: 14px;
-    display: none;
-  }
-  .strange{
-    position: absolute;
-    left: 63px;
-  }
-  img{
-     width: 140px;
-     
-  }
-}
+
 // .button-primary {
 //   display: block;
 //   margin: 50px 0;

+ 0 - 2
sites/doc/index.html

@@ -25,8 +25,6 @@
     var jaq = jaq || [];
     jaq.push(['account', 'JA2018_1831300']);
     jaq.push(['domain', 'jd.com']);
-    jaq.push(['anchorpvflag', 'true']);
-    jaq.push(['anchorToUri', 1]);
     (function () {
       var ja = document.createElement('script');
       ja.type = 'text/javascript';

+ 9 - 0
sites/doc/router.js

@@ -12,6 +12,7 @@ import frontCover from './index.vue';
  const Start = () => import('./page/start.vue');
  const International = () => import('./page/international.vue');
  const Theme = () => import('./page/theme.vue');
+ const JoinUs = () => import('./page/joinus.vue');
  //const Update = () => import('./page/changelog.vue');
 
 Vue.use(VueRouter);
@@ -62,6 +63,14 @@ const routes = [
       default: Index,
       main: Theme,     
     }
+  },
+  {
+    path: '/joinus',
+    name: 'joinus',
+    components: {
+      default: Index,
+      main: JoinUs,
+    }
   }
 ];
 //组件md文件展示

+ 10 - 8
src/utils/raf.js

@@ -1,12 +1,14 @@
 function requestAniFrame() {
-    return (
-        window.requestAnimationFrame ||
-        window.webkitRequestAnimationFrame ||
-        window.mozRequestAnimationFrame ||
-        function (callback) {
-            window.setTimeout(callback, 1000 / 60);
-        }
-    );
+    if(typeof window !== 'undefined'){
+        return (window.requestAnimationFrame || window.webkitRequestAnimationFrame || window.mozRequestAnimationFrame || 
+            function (callback) {
+                window.setTimeout(callback, 1000 / 60);
+            });
+    }else{
+        return function (callback) {
+                    setTimeout(callback, 1000 / 60);
+               };
+    }
 }
 
 export default requestAniFrame();