require

require.js 入门学习 (share)

ぐ巨炮叔叔 提交于 2020-01-16 07:20:05
   最近的项目用到了require.js ,搜集一些资源留个备份,顺便分享给大家。   以下内容转自 阮一峰 老师的网络日志: http://www.ruanyifeng.com/blog/2012/11/require_js.html   更多学习资源:     require.js官网: http://requirejs.org/docs/download.html     一篇不错的文章: http://www.csdn.net/article/2012-09-27/2810404 一、为什么要用require.js? 最早的时候,所有Javascript代码都写在一个文件里面,只要加载这一个文件就够了。后来,代码越来越多,一个文件不够了,必须分成多个文件,依次加载。下面的网页代码,相信很多人都见过。   <script src="1.js"></script>   <script src="2.js"></script>   <script src="3.js"></script>   <script src="4.js"></script>   <script src="5.js"></script>   <script src="6.js"></script> 这段代码依次加载多个js文件。 这样的写法有很大的缺点。首先,加载的时候,浏览器会停止网页渲染,加载文件越多

CommonJS和AMD

主宰稳场 提交于 2020-01-16 07:16:21
CommonJS中,有一个全局性方法require(),用于加载模块,适用于服务器端,同步加载,  var math = require('math');  math.add(2,3); // 5 这对服务器端不是一个问题,因为所有的模块都存放在本地硬盘,可以同步加载完成,等待时间就是硬盘的读取时间。但是,对于浏览器,这却是一个大问题,因为模块都放在服务器端,等待时间取决于网速的快慢,可能要等很长时间,浏览器处于"假死"状态。 AMD也采用require()语句加载模块,但是不同于CommonJS,它要求两个参数: require([module], callback); 只要通过require.js加载 来源: https://www.cnblogs.com/Ferrari/p/7205777.html

揭秘webpack plugin

天大地大妈咪最大 提交于 2020-01-15 21:48:11
前言 Plugin(插件) 是 webpack 生态的的一个关键部分。它为社区提供了一种强大的方法来扩展 webpack 和开发 webpack 的编译过程。这篇文章将尝试探索 webpack plugin,揭秘它的工作原理,以及如何开发一个 plugin。 一、Plugin 的作用 关于 Plugin 的作用,引用一下 webpack 官方的介绍: Plugins expose the full potential of the webpack engine to third-party developers. Using staged build callbacks, developers can introduce their own behaviors into the webpack build process. 翻译成“人话”就是: 通过插件我们可以扩展 webpack,加入自定义的构建行为,使 webpack 可以执行更广泛的任务,拥有更强的构建能力。 二、Plugin 工作原理 Plugin 的工作原理,简单来说,就是webpack在编译过程中提供了一些生命周期钩子,我们的插件会在这些钩子事件中注入我们要执行的任务(注册处理器),当 webpack 执行构建的时候,它的 Tapable 事件流会自动调用这些钩子,从而触发我们注入的方法,执行我们的自定义任务。 三

vue-cli 项目结构

最后都变了- 提交于 2020-01-15 09:22:51
Vue-cli 项目结构 vue-cli 为我们搭建开发所需要的环境 目录结构及主要功能 |-- build // 项目构建(webpack)相关代码 | |-- build.js // 生产环境构建代码 | |-- check-version.js // 检查node、npm等版本 | |-- dev-client.js // 热重载相关 | |-- dev-server.js // 构建本地服务器 | |-- utils.js // 构建工具相关 | |-- webpack.base.conf.js // webpack基础配置 | |-- webpack.dev.conf.js // webpack开发环境配置 | |-- webpack.prod.conf.js // webpack生产环境配置 |-- config // 项目开发环境配置 | |-- dev.env.js // 开发环境变量 | |-- index.js // 项目一些配置变量 | |-- prod.env.js // 生产环境变量 | |-- test.env.js // 测试环境变量 |-- src // 源码目录 | |-- components // vue公共组件 | |-- store // vuex的状态管理 | |-- App.vue // 页面入口文件 | |-- main.js //

2020年了,再不会webpack敲得代码就不香了(万字实战)

风流意气都作罢 提交于 2020-01-15 03:49:27
前言 2020年即将到来,在众多前端的招聘要求里, webpack 、 工程化 这些字眼频率越来越高。日常开发者中,我们常常在用诸如 vue-cli 、 create-react-app 的脚手架来构建我们的项目。但是如果你想在团队脱颖而出(鹤立鸡群)、拿到更好的offer(还房贷),那么你必须去深刻的认识下我们经常打交道的 webpack 本文共分为三个部分带你快速掌握webpack,阅读本篇大概需要60分钟。如有不足之处,恳请斧正 本文编写基于 webpack 4.41.2 版本 node: 10.15.3 版本 1 入门(一起来用这些小例子让你熟悉webpack的配置) 1.1 初始化项目 新建一个目录,初始化npm npm init webpack是运行在node环境中的,我们需要安装以下两个npm包 npm i -D webpack webpack-cli npm i -D 为npm install --save-dev的缩写 npm i -S 为npm install --save的缩写 新建一个文件夹 src ,然后新建一个文件 main.js ,写一点代码测试一下 console . log ( 'test 1...' ) 配置package.json命令 "scripts" : { "build" : "webpack src/main.js" } , 执行

Is it possible to modify the Lua script to require?

回眸只為那壹抹淺笑 提交于 2020-01-14 13:45:09
问题 When I call require 'name' in Lua, the name can be either a preloaded module name or a file that exists in a current working directory. I have the following two questions: A. I would like to know if it's possible to find out whether a preloaded module or a file will be required right before it will be required. B. And if it's a file, I want to modify the script which will be required (by prepending/appending some code on top of existing one) and then require the modified script finally. Are A

LoadError when creating ruby gem

你。 提交于 2020-01-14 06:21:07
问题 I'm trying to create my first gem and here's its structure: riverbattle ├── lib │ ├── riverbattle │ │ ├── base.rb │ │ ├── colorful.rb │ │ ├── computer.rb │ │ ├── constants.rb │ │ ├── exit_error.rb │ │ ├── field.rb │ │ ├── game.rb │ │ ├── human.rb │ │ ├── invalid_move_error.rb │ │ ├── move.rb │ │ ├── player.rb │ │ ├── version.rb │ │ └── victory_error.rb │ └── riverbattle.rb └── riverbattle.gemspec When I am in the directory rivarbattle/lib/riverbattle and I run the command ruby base.rb ,

nodejs快速入门

我只是一个虾纸丫 提交于 2020-01-13 21:35:57
目录: 编写第一个Node.js程序; 异步式I/O和事件循环; 模块和包; 调试。 1. 编写第一个Node.js程序;   Node.js 具有深厚的开源血统,它诞生于托管了许多优秀开源项目的网站—— github。和大多数开源软件一样,它由一个黑客发起,然后吸引了一小拨爱好者参与贡献代码。一开始它默默无闻,靠口口相传扩散,直到某一天被一个黑客媒体曝光,进入业界视野,随后便有一些有远见的公司提供商业支持,使其逐步发展壮大。   用 Node.js 编程是一件令人愉快的事情,因为你将开始用黑客的思维和风格编写代码。你会发现像这样的语言是很容易入门的,可以快速了解到它的细节,然后掌握它。 1.1helloworld 好了,让我们开始实现第一个 Node.js 程序吧。打开你常用的文本编辑器,在其中输入: console.log('Hello World'); 将文件保存为 helloworld.js,打开终端,进入 helloworld.js 所在的目录,执行以下命令: node helloworld.js 如果一切正常,你将会在终端中看到输出 Hello World。 console 是 Node.js 提供的控制台对象,其中包含了向标准输出写入的操作,如 console.log、console.error 等。console.log 是我们最常用的输出指令,它和 C 语言中的

vue+node 实现网关配置页面的增删改查

只愿长相守 提交于 2020-01-13 16:33:12
vue写页面: 1、使用iview组件Form ,给Form-item 添加label 属性,报错:[Vue warn]: Error in render: “TypeError: Cannot read property ‘_t’ of undefined” 原因是:使用iview.js的版本太低,替换iview.js 2.0就可以了 2、添加less依赖,可以使用less编辑样式 package.json 中 devDependencies:{   'less':'^2.7.2', 'less-loader':'^4.1.0' } 3、使用iview组件——Card 边框很浅,原因:最外层的index.html 应有个font-size设置(一般设置为100px) 因为,组件边框的宽的样式的设置是rem (function(){ var availWidth = window.screen.width; if(!availWidth){ return 0; } availWidth = availWidth <1920?1920:availWidth;//最小宽度1920 var fontSize = parseFloat(100/1920*availWidth,10).toFixed(2); var root = document.documentElement ||

Node.js global require

别等时光非礼了梦想. 提交于 2020-01-13 09:01:56
问题 how can i require a module globally so i can use it in different modules without having to require it again? or do i just have to do that everytime? is there any best practice for this? heres an example of what i am talking about. lets say i have an index.js like this: var a = require('a.js'), utils = require('utils.js'); var str = 'hello this is a test'; str = a.change(str); utils.return(str); a.js var utils = require('utils.js'); exports.change = function(str) { str = str.replace('test',