require

vue打包详情

喜夏-厌秋 提交于 2019-11-30 07:17:32
说明 本文代码中的配置基于vue-cli2 需求 在实际开发中我们可能有测试环境一套请求API 和 正式环境一套API,尤其是两个环境的域名不同时,就需要我们分环境打不同配置的包 了解 webpack.DefinePlugin 插件 DefinePlugin 此插件可以在打包时定义环境变量,在开发时我们也能在代码中获取定义的环境变量。 用法: 单独配置 plugins: [ new webpack.DefinePlugin({ 'process.env.mode': '"development"' }) ... ] 写成对象 plugins: [ new webpack.DefinePlugin({ 'process.env': { NODE_ENV: '"development"', EVN_CONFIG: '"dev"', API_ROOT: '"dev API_ROOT"' } }) ... ] 写成配置文件 plugins: [ new webpack.DefinePlugin({ 'process.env': require('../config/dev.env') }) ... ] // /config/dev.env.js 'use strict' const merge = require('webpack-merge') const prodEnv =

Ruby: how to “require” a file from the current working dir?

允我心安 提交于 2019-11-30 06:37:21
How do I require a file from the current folder? I have a file called sql_parser.rb that contains a class. I want to include this in another file also in the same folder, so I used: require 'sql_parser' That fails when I run from that folder: LoadError: no such file to load -- sql_parser I tried using IRB in the folder where this file exists and requiring it from there, but had the same issue. In ruby 1.9.x, you can use the method require_relative . See http://www.ruby-doc.org/core-1.9.3/Kernel.html#method-i-require_relative . Use $:.unshift File.join(File.dirname(__FILE__)) to ensure that you

常用的webpack优化方法

北战南征 提交于 2019-11-30 04:39:02
1. 前言 关于 webpack ,相信现在的前端开发人员一定不会陌生,因为它已经成为前端开发人员必不可少的一项技能,它的官方介绍如下: webpack 是一个模块打包器。webpack的主要目标是将 JavaScript 文件打包在一起,打包后的文件用于在浏览器中使用,但它也能够胜任转换(transform)、打包(bundle)或包裹(package)任何资源(resource or asset)。 在日常开发工作中,我们除了会使用 webpack 以及会编写它的配置文件之外,我们还需要了解一些关于 webpack 性能优化的方法,这样在实际工作就能够如虎添翼,增强自身的竞争力。 关于 webpack 优化的方法我将其分为两大类,如下: 可以提高 webpack 打包速度,减少打包时间的优化方法 可以让 Webpack 打出来的包体积更小的优化方法 OK,废话不多说,接下来我们就来分别了解一下优化方法。 2. 提高 Webpack 打包速度 2.1 优化Loader搜索范围 对于 Loader 来说,影响打包效率首当其冲必属 Babel 了。因为 Babel 会将代码转为字符串生成 AST ,然后对 AST 继续进行转变最后再生成新的代码,项目越大, 转换代码越多,效率就越低 。当然了,我们是有办法优化的。 首先我们可以 优化 Loader 的文件搜索范围 ,在使用

PHP autoload 函数

坚强是说给别人听的谎言 提交于 2019-11-30 03:24:07
PHP autoload 函数 (1) autoload机制概述 在使用PHP的OO模式开发系统时,通常大家习惯上将每个类的实现都存放在一个单独的文件里,这样会很容易实现对类进行复用,同时将来维护时也很便利。这也是OO设计的基本思想之一。在PHP5之前,如果需要使用一个类,只需要直接使用include/require将其包含进来即可。下面是一个实际的例子: /* Person.class.php */ <?php class Person { var $name, $age; function __construct ($name, $age) { $this->name = $name; $this->age = $age; } } ?> /* no_autoload.php */ <?php require_once (”Person.class.php”); $person = new Person(”Altair”, 6); var_dump ($person); ?> 在这个例子中,no-autoload.php文件需要使用Person类,它使用了require_once将其包含,然后就可以直接使用Person类来实例化一个对象。 但随着项目规模的不断扩大,使用这种方式会带来一些隐含的问题:如果一个PHP文件需要使用很多其它类,那么就需要很多的require

PHP的autoload机制的实现解析

扶醉桌前 提交于 2019-11-30 03:23:54
PHP的autoload机制的实现解析 在使用PHP的OO模式开发系统时,通常大家习惯上将每个类的实现都存放在一个单独的文件里,这样会很容易实现对类进行复用,同时将来维护时也很便利 一、autoload机制概述 在使用PHP的OO模式开发系统时,通常大家习惯上将每个类的实现都 存放在一个单独的文件里,这样会很容易实现对类进行复用,同时将来维护时也很便利。这也是OO设计的基本思想之一。在PHP5之前,如果需要使用一个类, 只需要直接使用include/require将其包含进来即可。 下面是一个实际的例子: 复制代码 代码如下: /* Person.class.php */ <?php class Person { var $name, $age; function __construct ($name, $age) { $this->name = $name; $this->age = $age; } } ?> /* no_autoload.php */ <?php require_once ("Person.class.php"); $person = new Person("Altair", 6); var_dump ($person); 在这个例子中,no-autoload.php文件需要使用Person类,它使用了require_once将其包含

php autoload机制学习

拈花ヽ惹草 提交于 2019-11-30 03:23:37
在使用PHP的OO模式开发系统时,通常大家习惯上将每个类的实现都存放在一个单独的文件里,这样会很容易实现对类进行复用,同时将来维护时也很便利。这也是OO设计的基本思想之一。在PHP5之前,如果需要使用一个类,只需要直接使用include/require将其包含进来即可。下面是一个实际的例子: 01 /* Person.class.php */ 02 <?php 03 class Person { 04 var $name , $age ; 05 06 function __construct ( $name , $age ) 07 { 08 $this ->name = $name ; 09 $this ->age = $age ; 10 } 11 } 12 ?> 13 14 /* no_autoload.php */ 15 <?php 16 require_once ( "Person.class.php" ); 17 18 $person = new Person(”Altair”, 6); 19 var_dump ( $person ); 20 ?> 在这个例子中,no-autoload.php文件需要使用Person类,它使用了require_once将其包含,然后就可以直接使用Person类来实例化一个对象。 但随着项目规模的不断扩大,使用这种方式会带来一些隐含的问题

php include 和require语句

隐身守侯 提交于 2019-11-30 03:04:39
PHP include 和require语句 区别:require生成一个错误,在错误发生后脚本会停止执行 include生成一个警告,在错误发生后脚本会继续执行 实例1 假设有一个标准的页头文件,名为hearder.php。在页面中引入这个头文件 <html> <head> <meta charset="utf-8"> <title>php教程(runoob.com)</title> </head> <body> <?php include 'header.php'; ?> //引入头文件 <h1>欢迎来到我的主页!</h1> <p>一些文本。</p> </body> </html> 实例2,假设有一个在所有页面中使用的标准菜单文件,menu.php。 <?php echo '<a href="/">主页</a> <a href="/">HTML教程</a> <a href="/">PHP教程</a>'; ?> 网页中所有的页面均使用该菜单文件,具体做法如下: <html> <head> <meta charset="utf-8"> <title>php教程(runoob.com)</title> </head> <body> <div class="leftmenu"> <?php include 'menu.php'; ?> </div> <h1>欢迎来到我的主页!</h1>

前端常用的库和实用技术之JavaScript 模块化

做~自己de王妃 提交于 2019-11-30 02:18:52
模块化概念 AMD是requirejs在推广过程中对模块化定义的规范化产出。 异步加载模块,依赖前置,提前执行 Define定义模块define(['require','foo'],function(){return}); Require加载模块(依赖前置)require(['foo','bar'],function(foo,bar){}); CMD是SeaJS在推广过程中对模块化定义的规范化产出。 Define定义exports导出define(function(require,exports,module){}); module上存储了当前模块上的一些对象。 require(./a)直接引入,require.async异步引入 同步加载,依赖就近,延迟执行 类似的还有CommonjsModule/2.0规范 AMD模块化的代码 //index.html <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Document</title>

Nodejs + Require instanceof behaviour

前提是你 提交于 2019-11-30 01:45:52
问题 I'm encountering a strange behaviour with instanceof in NodeJs. I'm trying to creating a module which throws exceptions which can be caught by consuming modules and dealt with based on the exception type. However the call to test the type " error instanceof mod.MyException " is always returning false. mymodule.js : function MyException() {} MyException.prototype = new Error(); MyException.prototype.constructor = MyException; function Foo() { throw new MyException(); } exports.Foo = Foo;

weboack 入门二

谁说我不能喝 提交于 2019-11-30 01:17:13
Webpack中必须掌握的配置 loader主要用于把模块原内容按照需求转换成新内容,可以加载非 JS 模块! 通过使用不同的Loader,Webpack可以把不同的文件都转成JS文件,比如CSS、ES6/7、JSX等。 我们来看看这些我们必须掌握的loader! 1.loader的编写 1.1 loader的使用 test:匹配处理文件的扩展名的正则表达式 use:loader名称,就是你要使用模块的名称 include/exclude:手动指定必须处理的文件夹或屏蔽不需要处理的文件夹 options:为loaders提供额外的设置选项 默认 loader 的顺序是 从下到上 、 从右向左 执行,当然执行顺序也可以手动定义的,接下来我们依次介绍常见的loader,来感受 loader 的魅力! 我们基于这个基础配置来继续编写: const path = require("path"); const dev = require("./webpack.dev"); const prod = require("./webpack.prod"); const merge = require("webpack-merge"); const HtmlWebpackPlugin = require("html-webpack-plugin"); const {