Vue-Config 配置模板

const path = require('path');

const resolve = dir => path.join(__dirname, dir);

const urlPath = process.env.NODE_ENV === 'development' ? './' : '/item-name/';

module.exports = {
// 基本路径
baseUrl: urlPath,
// 生产环境是否生成 sourceMap 文件
productionSourceMap: false,
// 服务器端口号
devServer: {
port: 1234,
},
chainWebpack: config => {
config.resolve.alias
.set('@$', resolve('src'))
.set('components', resolve('src/components'))
.set('utils', resolve('src/utils'))
.set('service', resolve('src/service'))
.set('views', resolve('src/views'))
.set('assets', resolve('src/assets'));
},
};

阅读全文

Gitlab Ci 配置模板

gitlab ci 配置模板

阅读全文

Html 文档导出为 Word 文档和 Pdf 文档

最近在折腾用 js 实现 html 转文本的东东,包括 html 转 docx、doc 以及 pdf 等文档,首选当然是用别人造好的轮子啦。

html 转 pdf 用的轮子是 jsPdf,这东西好用是好用,但是有一个很大的缺点,对中文的支持太差了,我用的是 fromhtml 方法,研究文档研究了几天,还是没发现对中文支持的方法,尝试了各种奇技淫巧(换字体,解码等)后,发现它这个方法根本就不支持中文,当然他官方就声明了不支持中文。不过他的 addhtml 方法勉强实现了我的需求,但是因为是采用截图方式,断页很不智能,甚至会出现文字被生生的拦腰截断的情况,加之生成的 pdf 像素实在惨不忍睹,决定还是放弃了。具体的实现,网上有很多的文档,大家可以自行查阅,我也是根据自己的需求定制了而已,所以源码示例就不做过多分享了。

阅读全文

N * N 阶矩阵算法

n * n 阶矩阵的解法有几种方式,分而治之、暴力破解等,我这里用的方法就是暴力破解的方法,时间和空间复杂度肯定是比较差的,不过能快速获得结果而已,用 js 的实现代码如下:

function matrix(A, B) {
var n = A.length;
var C = [];
for ( var i = 0; i < n; i++ ){
C[i] = [];
for( var j = 0; j < n; j++ ){
C[i][j] = 0;
for( var k = 0; k < n; k++ ){
C[i][j] += A[i][k] * B[k][j];
}
}
}
console.log(C);
}
matrix([[1,2], [3, 4]], [[3, 2], [1, 4]]);
//[ [ 5, 10 ], [ 13, 22 ] ]

阅读全文

Hexo 博客迁移

hexo 博客迁移

阅读全文

Angular 导航栏与内容联动

通过 angular 的 render2 渲染器操作 DOM , 通过获取 DOM 的滑动只与定位,计算出滑动距离,并控制速率。

阅读全文

CKeditor 在 Angular 中的使用文档

CKeditor 是比较好用的一款所见即所得编辑器,有多种模式可供选择,里面还可集成 leText 等第三方插件,也可以自己开发一些插件,推荐使用。上手也很简单,但是在 angular 中使用还是要费一点时间,配置上也要花点时间。

阅读全文

JS 模态框————Angular

最近有个功能要做,要用到模态框,了解了一下,可以引用 boostrap + jquery 实现,但是看了看还要引用两个库,麻烦,自己写还来得快点,自己写还有个好处,想写成什么样都行。

阅读全文

Ubuntu 配置前端环境

ubuntu 配置前端环境

阅读全文

盒模型

1. 标准盒模型:

因为 width = margin_box_width(left_width + right_width) + border_width + padding_box_width(left_width + right_width) + content_box_width,所以,同样宽度的内容因为 marginpadding 值不一样,撑开了内容块的宽度,显示出来的效果不尽相同。为了解决这个问题,IE8+可以用设置 box-sizing:border-box 来避免内容块的宽度被撑开。因此,一般可以进行如下设置,使 content_box_width = width

阅读全文