npm

ts 分享

馋奶兔 提交于 2020-08-12 00:52:28
主要内容: Typescirpt 背景(快) 用webpack 搭建一个ts环境(慢) ts基础(快) ts 进阶(慢) 装饰器(慢) ts在 vue项目中使用 typescript 缘起 什么是typescript 为什么要用ts ts的现状和未来 ts的ROI 主要内容 ts基础 ts 工程 强类型语言 弱类型语言 静态类型语言和动态类型语言 用webpack手动搭建一个ts环境 ### - npm i typescript -g - npm list --depth=0 ### 初始化 - npm init -y - npm i typescript -g // 全局安装,可以在任何地方使用ts编译器,tsc - tsc --init - tsc ### webpack - npm i webpack webpack-cli webpack-dev-server -D - > build - npm i ts-loader typescript HtmlWebpackPlugin --D - HtmlWebpackPlugin 通过一个模板,帮助我们生成网站的首页,而且把输出文件自动切到这个文件中 - npm i webpack-merge@4.2.1 -D ### - 修改npm脚本 - 入口 main - start - "start": "webpack-dev

使用nodejs连接mysql数据库实现增删改查

非 Y 不嫁゛ 提交于 2020-08-12 00:41:48
首先要有数据库 使用xampp 或者 phpstudy 可以傻瓜式安装 新建一个项目文件夹 之后在这个目录下初始化package.json (npm init) 先在项目中安装mysql 和 express ,这个项目里使用express 因为express实现路由比较方便 cnpm install mysql express --save 已经安装好mysql和express 接下来创建app.js 在app.js里引入express并实例化express对象 在app.js里引入mysql 开启一个服务器 接下来创建连接 使用db.connect()方法连接 ,这个方法接收一个参数 有错误就报错 创建数据库 在一个路由里写sql语句 使用db.query来执行sql语句 db.query()方法有两个参数 ,第一个参数是要执行的语句 第二个参数是个回调函数 回调函数里可以接收错误信息,也有执行后回来的信息 依然是错误优先 接下来在浏览器里访问127.0.0.1:3000/createdb 页面上显示创建成功 数据库里已经有nodemysql数据库了 这个时候就可以在配置连接数据库里加上当前的数据库了 创建表 也是在一个路由里写sql语句 类型是 int 数值 AUTO_INCREMENT 让id 自增, VARCHAR(255) 字符串 长度255,PRIMARY KEY(ID

CI 自动化部署 方案gitlab-runner

核能气质少年 提交于 2020-08-12 00:15:57
现在大多数公司都很多项目需要自动部署 到多台服务器 代码检查等工作 ,为了提供工作效率往往需要我们的ci就闪亮登场了 今天说一下我所采用的 gitlab-runner 提供的方案 ,感觉这个比较实用而且基本上很多公司也在用gitlab环境 ,应该也很方便部署 减少了再引进其他软件平台所带来的不便,废话不多说 直接进入主题 如何操作使用: 1.找到一个适合自己gitlib 版本的 gitlib-runner 下载 rpm包 2.安装对应的包 rpm -ivh 3.gitlab-runner register 输入你的gitlab地址 4.去gitlab上找到 对应授权的 串码 5.起一下名字 和 标签 和执行方式 6.然后 在你的gitlab上就会出现对应的 一个新的记录 表明你的gitlab已经和对应的服务器进行通讯了(创建的分享类型可以是共享的还有 私有的 或者标注标签的 根据自己的工作需求自己设定) 7.在项目中创建 .gitlab-ci.yml 这个文件中写入你项目要自动执行的内容 比如说PHP可以进行拉代码 同步代码 开启服务等任务。当然现在的大前端趋势下也有很多 任务可以做 代码服务器端 的npm构建 代码的自动检查 等都可以在此文件中进行执行。 具体详情可以参考 https://github.com/Fennay/gitlab-ci-cn 官网中的介绍

使用Hexo+Github建立并发布个人博客

我是研究僧i 提交于 2020-08-11 23:02:01
一. 安装npm/cnpm/hexo 安装npm 在官网下载node安装包,一路next,即可(nodejs安装包含node.js和npm包管理工具) 安装cnpm npm install -g cnpm --registry=https://registry.npm.taobao.org 建立博客文件夹 在硬盘建立文件夹 blog 安装hexo cnpm install -g hexo-cli 初始化hexo 进入blog文件夹 hexo init 启动博客 hexo s/start 二.部署到github 安装部署插件 cnpm install --save hexo-deployer-git 登录github,新建仓库 仓库名称为: 昵称.github.io (必须是昵称否则会出错) 修改blog文件夹下的_comfig.yml , 在结尾添加: deploy: type: git repo: https://github.com/昵称/昵称.github.io.git branch: master 部署到github hexo d 访问博客 昵称.github.io 来源: oschina 链接: https://my.oschina.net/u/4517769/blog/4341233

L1-032 Left-pad (20分)

老子叫甜甜 提交于 2020-08-11 22:22:29
L1-032 Left-pad (20分) 根据新浪微博上的消息,有一位开发者不满 \(NPM(Node\) \(Package\) \(Manager)\) 的做法,收回了自己的开源代码,其中包括一个叫 \(left-pad\) 的模块,就是这个模块把 \(javascript\) 里面的 \(React/Babel\) 干瘫痪了。这是个什么样的模块?就是在字符串前填充一些东西到一定的长度。例如用 * 去填充字符串 GPLT ,使之长度为 \(10\) ,调用 \(left-pad\) 的结果就应该是 ******GPLT 。 \(Node\) 社区曾经对 \(left-pad\) 紧急发布了一个替代,被严重吐槽。下面就请你来实现一下这个模块。 输入格式: 输入在第一行给出一个正整数 \(N(\leqslant 10^4)\) 和一个字符,分别是填充结果字符串的长度和用于填充的字符,中间以 \(1\) 个空格分开。第二行给出原始的非空字符串,以回车结束。 输出格式: 在一行中输出结果字符串。 输入样例1: 15 _ I love GPLT 输出样例1: ____I love GPLT 输入样例2: 4 * this is a sample for cut 输出样例2: cut 代码: #include<bits/stdc++.h> using namespace std; int

Vue视频播放器 vue-video-player

浪尽此生 提交于 2020-08-11 21:10:57
Vue视频播放器 vue-video-player 本篇主要记录一下 在 vue 项目中 如何使用 vue-video-player 来作为视频播放器,由于最近在做博客的 轻松一刻模块 所以拿这个尝试一下 在此纪录一下 以及遇到的小坑等。。 1. 安装 vue-video-player 直接输入 npm install 命令 注意不要使用 cnpm npm install vue-video-player -S 2.配置 全局main.js文件 引入 直接在 vue 项目的 main.js 中 引入 插件和其样式 import VideoPlayer from 'vue-video-player' require('video.js/dist/video-js.css') require('vue-video-player/src/custom-theme.css') Vue.use(VideoPlayer) 3.使用 vue-video-player 3.1 组件中引入 <video-player class="video-player vjs-custom-skin" ref="videoPlayer" :playsinline="true" :options="playerOptions"> </video-player> 3.2 编写 playerOptions 注意

以太坊 助记词提取 账户 公钥 私钥 最新实现可用。

瘦欲@ 提交于 2020-08-11 20:51:47
step 1 装依赖的包(npm/yarn 自己选一个): yarn add bip39 ethereumjs-wallet ethereumjs- util npm install bip39 ethereumjs-wallet ethereumjs-util step 2 演示代码: const bip39 = require('bip39' ) const {hdkey} = require('ethereumjs-wallet' ) const util = require('ethereumjs-util' ) // 1 生成助记词 ;1.1 和 1.2 自己按需。 // 1.1 生成助记词 ;这里用生成的. // let mnemonic = bip39.generateMnemonic() // 1.2 生成助记词 ;这里用写死的. let mnemonic = "hold scale hybrid tank dilemma bullet ship language attitude rug tennis host" console.log(mnemonic) // 2.将助记词转成seed getSeed = async ()=> { let seed = await bip39.mnemonicToSeed(mnemonic) console.log( "seed

VSCode 配 uni-app

浪尽此生 提交于 2020-08-11 20:48:51
CLI工程 全局安装vue-cli 1 npm install -g @vue/cli 通过cli创建uni-app项目 1 vue create -p dcloudio/uni-preset-vue uni-app 选择项目模板,可自由选择如下图:👇 使用vscode打开创建的项目 安装vue语法提示插件👇 cli工程自带uni-app&5+app语法提示 安装组件语法提示 1 npm i @dcloudio/uni-helper-json 从 git 下载 uni-app 代码块 ,放到项目目录下的 .vscode 目录即可拥有和 HBuilderX 一样的代码块。 使用scss样式 1 # 先安装node-sass 2 npm install node- sass 3 # 然后安装sass-loader,这里安装7.3.1版本,版本可选择性更新,因为高版本可能会报错 4 # 使用 cnpm 会快一些 5 cnpm install sass-loader@7.3.1 运行项目 1 npm run dev:%PLATFORM% 发布项目 1 npm run build:%PLATFORM% %PLATFORM% 可选值参见package.json中的scripts HBuilderX 工程 HBuilderX 创建的工程默认不带 types 语法提示,在 vscode

小程序运行机制以及相关知识点(7K+字)

↘锁芯ラ 提交于 2020-08-11 19:50:24
以上均为个人汇总,如有不对欢迎指出! 小程序个人看法 可能今天在很多人眼中,小程序已经成为别人印象中的app,功能齐全,且可以完成各种功能以及业务。但是个人从小程序的诞生使用至今,在我眼中他依然是个轻量级应用,虽逐步的壮大,一些功能还是有所限制,但是从功能上的角度却无法与app相媲美。以微信小程序为例,也许今天大小限制8M,页面栈已经是15层,大小可开发约50~70个页面,的确已经很好的支持业务的开发以及功能的扩张。但是在小程序开始之初,页面栈仅为5,包大小限制1M,很多业务的确无法扩展。小程序也因业务的扩展,逐步逐渐支持工程化,如当前支持npm包。但我们从小程序的产品整体设计上,还是不能忘记这个限制,无止境的叠加页面以及业务。 小程序的编译原理 简单的借助大神的思路,描述一下小程序的编译原理。 我们都知道,小程序页面由View(视图层),App Service(逻辑层)组成。它们在两个线程中运行(我们传统的h5,是单线程运行)。他们之间是由系统的JSBridage(常用于原生与h5交互的工具,可自行百度)进行交互的。 视图层使用 WebView 渲染,iOS 中使用自带 WKWebView,在 Android 使用腾讯的 x5 内核(基于 Blink)运行。 逻辑层使用在 iOS 中使用自带的 JSCore 运行,在 Android 中使用腾讯的 x5 内核(基于 Blink

Mac下升级nodejs至v12.18.3版本,mac升级node方法

这一生的挚爱 提交于 2020-08-11 19:12:39
升级背景 为了解决升级vue的版本导致的报错问题,需要升级nodejs解决,将简易升级方法在此留存以备忘 升级NODE 1.查看node版本 node -v 2.清除node缓存 sudo npm cache clean -f 3.安装n工具,超简洁的名称 sudo npm install -g n 4.通过n工具升级node sudo n stable 5.用第一步的命令查看版本 node -v v12.18.3 发现已经更新至最新版本了 6.用同样的方法升级npm sudo npm install npm@latest -g 7.最后再来验证一遍 node -v v12.18.3 npm -v 6.14.7 升级成功 前端项目样例 https://github.com/matevip/artemis 来源: oschina 链接: https://my.oschina.net/u/4308764/blog/4439282