我没有使用一些流行的默认 eslint 配置包,选择了自定义规则。.../index.js # 或者 yarn run eslint src 每次写完代码都要执行命令的话,不免开发体验差。...npx eslint src/index.js --fix VSCode 则可以通过智能提示的 Quick Fix 自动修复。 需要注意的是,并不是所有的规则错误都可以 auto fix。...env 对一些 rule 是有作用的,比如 no-undef,表示不能使用未定义的变量。但有些变量其实是脚本所在宿主环境提供的全局变量,比如浏览器的 window,nodejs 的 process。...提供了 env 后,ESLint 就能有一个环境变量的白名单,看到这些变量就跳过 no-undef 规则。
我决定定义一个moveElement函数,在间隔时刻改变目标的位置直到到达终点: function moveElement(elementId,final_x,final_y,interval) {... (2)DOM初始化 我们定义一个初始化的函数,用这个函数给style属性初始化,或者直接在moveElement函数内部初始化...也许你会想到style.backgroundPositionX属性,但是这里我们用前面定义的动画函数moveElement. HTML <!...乍一看移动效果是实现了,但是似乎有一些问题,当两个方向的图片都被悬浮的时候,图片没有移动而是来回振动,问题出在哪?...清除积累事件 我们想在moveElement函数内部添加一些东西,moveElement执行的时候,要将已有的timer清除: 方法1:定义全局变量 var timer;//定义全局变量 function
var src = item.data('src'); }); 变量校验 可以校验是否存在引用未定义变量,是否在变量定义之前使用变量,甚至连变量声明但未使用也可以校验。...,然后项目下肯定也有个index.js,那么就会出现遍历这个index.js文件两次,所以也会校验两次。...fis2的引入方式这里就不说了): // fis3配置 fis.match('**.js', { lint: fis.plugin('eslint', { //插件参数,请看下面第3...每个环境都有一组预定义的全局变量,比如你如果使用es6语法,而这里没有指定es6,则校验不通过的 globals: ['$','nie'], // 如果通过上面环境的预设全局变量还不能满足,这里可以配置一些自定义的全局变量...//具体校验规则,后面的数字代码错误级别 "semi": [1], //缺少必须的分号 "no-extra-semi": [1], //不必要的分号 "no-undef
// 此时我们还没有微应用,所以 apps 为空 const apps = []; export default apps; // micro-app-main/src/micro/index.ts...__POWERED_BY_QIANKUN__) { // 动态设置 webpack publicPath,防止资源加载出错 // eslint-disable-next-line no-undef...__POWERED_BY_QIANKUN__) { // 动态设置 webpack publicPath,防止资源加载出错 // eslint-disable-next-line no-undef...__INJECTED_PUBLIC_PATH_BY_QIANKUN__; } // micro-app-react/src/index.js import React from "react"; import...对于选择 Angular 技术栈的前端开发来说,对这类情况应该驾轻就熟(没有办法)。
"Access-Control-Allow-Origin": "*", // 主应用获取子应用时跨域响应头 }, }, }; 设置唯一端口,在.env里面设置端口号,这里端口号没有说必须要这里设置...,你也在其他地方设置,看你项目设计而定,但是端口号必须唯一,不跟已有应用发生冲突 c.在src下新建一个public-path.js文件 (function () { if (window....POWERED_BY_QIANKUN__) { if (process.env.NODE_ENV === "development") { // eslint-disable-next-line no-undef..._ = `//localhost:${process.env.VUE_APP_PORT}/`; return; } // eslint-disable-next-line no-undef...__INJECTED_PUBLIC_PATH_BY_QIANKUN__; } })(); d.Src下新建common文件夹,新建index.js文件(封装用于接收主应用参数) import Vue
修改src/index.js,主应用中注册微(子)应用 import React from 'react'; import ReactDOM from 'react-dom'; import '....__POWERED_BY_QIANKUN__) { // eslint-disable-next-line no-undef __webpack_public_path__ = window....修改src/App.js,主要完成子应用页面布局(略,见源码) 5. 修改src/index.js,微(子)应用导出相应的生命周期钩子 import '....errors: true, }, headers: { 'Access-Control-Allow-Origin': '*', }, }, // 自定义...srv/www/vue-cli-qiankun-sub:/etc/nginx/www/vue-cli-qiankun-sub --restart=always -d nginx:stable 6 总结 没有总结
}, }; // index.ts 定义 b 但未使用,并没有报错 const b: string = '1' 上述我们使用了 typescript 语法定义了变量 b 但是并没有使用变量 b...'no-undef': ['error'], }, }; // index.js console.log(window); // correct console.log(document...globals: { wangHaoyu: true, }, rules: { // 禁止使用未定义的变量 'no-undef': ['error'], },...}; // index.js console.log(wangHaoyu); 当访问当前源文件内未定义的变量时,no-undef 规则将发出警告。...: rules 目录中存放定义的各个规则,index.js 作为当前 Plugin 的统一入口文件从而进行导出。
/src/index.js 执行该命令就会检测对于的文件是否符合eslint默认配置的规则 添加eslint规则 在.eslintrc.js中,主要有以下5个部分 module.exports = {...prettier/recommended', '@vue/airbnb', '@vue/typescript', ], rules: { 'no-undef...': 0, // 由于eslint无法识别.d.ts声明文件中定义的变量,暂时关闭 'no-console': process.env.NODE_ENV === 'production'...rules,也可以执行npm init @eslint/config配置社区比较流行的自定义风格,使用Airbnb 当我们选择airbnb风格后,执行npx eslint ..../src/index.js 提示index.js有一个规则错误 Expected 1 empty line after import statement not followed by another
库的官方文档上去复制粘贴代码了~从高级 CV 工程师变成了高级摸鱼工程师了~ #整体思路 整体思路非常简单,如下: 创建几个模版文件(项目中常用的) 询问用户需要的组件类型 => 组件名称 => 组件位置 根据第(...-- component-generate 文件夹下 --> . ├── ProForm.jsx // 模版文件 ├── ProTable.jsx // 模版文件 ├── index.js // 核心代码文件..., choices: getTypeList(), // 获取自定义的模版,在第三步 }, { type: "input", name: GENERATE.FILE_NAME...: this.fileName.substring(0, this.fileName.lastIndexOf(".")) ); // eslint-disable-next-line no-undef...但是有一个问题就是 Node 不支持在没有的路径下新建文件,这时我们就得去创建对应的路径,然后在去创建对应的文件 核心代码如下: function recursiveWriteFile(path, buffer
/src/index.js (未加载状态) //模块内容: console.log("index"); require("./a"); require("./b"); 第1步:根据入口模块文件(..../src/index.js,它会通过这个路径检查当前这个模块是否已经加载过,注意哦:它不是运行模块,而是瞅一眼,看看模块记录表(上图右边蓝色表格)中该模块是不是被加载过,首次检查表格是没有内容的,空的。...第2步:如果说模块记录表中有记录,说明模块已经加载过了。如果没有记录,那么会继续走下一步,说明该模块需要加载 检查 ..../src/index.js 模块,发现该模块并未加载过 第3步:读取该模块中的内容,内容其实是个字符串 //读取内容(字符串) console.log("index"); require("..../src/b.js"); 第7步:我们将替换后的代码称为转换后的模块代码,并且把它保存到模块记录表中 第8步:index.js模块处理完成,由于index.js依赖其它模块,所以递归循环保存在dependencies
优先 /** classpath:/resources/ 第2优先 /** classpath:/META-INF/resources/ 第3优先 /** classpath:/static/ 第4优先...当需要重新定义好资源所在目录时,则需要主动添加上述的那个配置类,来Override addResourceHandlers方法。你需要自己来配置需要的每一项。...如果配置为/static/js/index.js 那么上面配置的几个目录下面都没有...}/js/index.js"> </...版本号如: <script type="text/javascript" src="/js/index.js?
在路由文件src/router/index.js里配置name属性。...节:vue-router 利用url传递参数 我们在第3节虽然已经学会传递参数,但是我们这些老程序员的情怀还是利用url来传值,因为我们以前在前后端没有分开开发的时候,经常这样做。...我们在/src/router/index.js文件里配置路由。...加入正则需要在路由配置文件里(/src/router/index.js)以圆括号的形式加入。...1.首先我们在路由配置文件里(/src/router/index.js),给上节课的Home路径起一个别名,jspang。
/templates/order.wxss"; index.wxml 引入 oder.wxml <import src='../.....if (b) for (var c in b) a[c] = b[c] }) return a }; module.exports=extend; 注意一下 a 代表第extend...没有任何关系 为什么能调用index.js 文件的object 对象的data变量?...虽然 this.data 在order.js 文件中是不存在的 但是这个语法是没有错误的javascript 允许调用不存在的对象或者方法!...程序执行的时候,调用的this.data 指的是index.js 文件中的定义的object对象的data变量,因为Page方法已经将两者结合在一起了 注意一点非常重要,如果调用的方法 不是包含在Object
为什么建造多页面应用: 多个页面之间业务互不关联,页面之间并没有共享的数据 多个页面使用同一个一个服务,使用通用的组件和基础库 建造多页面应用的好处: 保留了传统单页应用的开发模式:支持补充打包,你可以把每个页面看成是一个单独的单页应用...HtmlWebpackPlugin({ filename: 'page2/index.html', chunks: ['page2'] }), ], } 页面编辑 第1.../index.css"; document.querySelector("body").append("PAGE1"); index.css body { color: blue; } 第2页...“ createSnapshot” 报错:UnhandledPromiseRejectionWarning:TypeError:无法读取未定义的属性'createSnapshot' 原因:因为同时运行2...我们项目中没有安装webpack-cli,webpack会进行交替使用的webpack-cli,webpack5和webpack-cli3不兼容 解决:升级版本webpack-cli3到webpack-cli4
「Python与算法社区」 第 309 篇原创 昨天,写了入门javascript的一篇文章:这是我的10分钟 js 入门笔记,老铁给我们的建议,js非常有用,具体请看下面: ?...在src文件夹下新建一个index.js文件 添加下面内容 alert("Hi , Welcome to learn webpack") 注意:index.js文件名称是webpack默认的entry.../src/index.js] 38 bytes {main} [built] (base) ➜ src (base) ➜ webpack_learn ll total 304 drwxr-xr-x.../src/index.js": /*!**********************!*\ !*** ./src/index.js ***!.../src/index.js?"); /***/ }) /******/ }); 在输出目录./dist 下,新建一个index.html文件来引用mian.js看一下效果。 <!
index/index.js里。...对image元素,bindtap=”bindViewTap”, 意思是一旦点击,执行我们在index.js里实现的事件处理函数bindViewTap。...src=”{{userInfo.avatarUrl}}”: 该image的src属性绑定到数据模型userInfo的字段avatarUrl上。...第11行:{{motto}} 纯文本元素,显示的文本绑定到数据模型motto上。这个模型字段motto硬编码成Hello World,所以我们最后在小程序上看到显示的“Hello World”。 ?...下一篇文章我会继续讲解index.js里的代码含义。 ?
其中 /src/main 是存放主配置文件的,/src/render 下面有 store、router、components 等。...关键是 store,store 下面有一个 index.js 的主配置文件 index.js,和一个 modules 文件夹。...$store.dispatch('JUST_INCREASE') 并不能运行,没反应,计数器还是 0,不能赋值,就像是这个函数没有被执行一样。没有报错,没有任何异常,查也查不出什么问题。 ? ?...方法二: https://github.com/vue-electron/vuex-electron#installation 看第 3 条: In case if you enabled createSharedMutations...找到 /src/main/index.js,在前面加上一句: import '../renderer/store' ? 之后一切正常,可以使用 Dispatch 来进行操作了。 ?
index/index.js里。...对image元素,bindtap="bindViewTap", 意思是一旦点击,执行我们在index.js里实现的事件处理函数bindViewTap。...class="userinfo-avatar": userinfo-avatar也是我们在wxss里自定义的css类。...src="{{userInfo.avatarUrl}}": 该image的src属性绑定到数据模型userInfo的字段avatarUrl上。...我们可以直接在手机上打开微信小程序的console页面,从而查看当前视图绑定的数据模型userInfo的明细,其中userInfo.nickName包含的值如下: [微信小程序开发系列二:微信小程序的视图设计] 第11
资源 element UI Vue.js tracking-min.js face-min.js 源码 由于我们的电脑有的有摄像头,有的没有摄像头,所以我们需要根据不同的场景来封装这个组件。...有摄像头的话,我们就显示(需要人像识别组件): 没有摄像头的话,我们就显示(这个直接上传人像即可): 判断有无摄像头,我们可以使用这个方法: // 判断有无摄像头,推荐放在created里...return false; } else { console.info("有摄像头"); this.videoinput = true; // 这是我自定义的一个状态...document.getElementById("canvas"); var context = canvas.getContext("2d"); // eslint-disable-next-line no-undef...tracker.setStepSize(2); tracker.setEdgesDensity(0.1); // eslint-disable-next-line no-undef
/src/index.js。 我们常见的项目中,如果是单页面应用,那么可能入口只有一个;如果是多个页面的项目,那么经常是一个页面会对应一个构建入口。.../src/index.js' } // 上述配置等同于 module.exports = { entry: { main: '..../src/index.js' } } // 或者配置多个入口 module.exports = { entry: { foo: '....举个例子,在没有添加额外插件的情况下,webpack 会默认把所有依赖打包成 js 文件,如果入口文件依赖一个 .hbs 的模板文件以及一个 .css 的样式文件,那么我们需要 handlebars-loader...第 15 小节我们会介绍如何开发 plugin,让读者们在必要时,也可以在 webpack 的基础上开发 plugin 来应对一些项目的特殊构建需求。
领取专属 10元无门槛券
手把手带您无忧上云