配置
webpack
npm i init --ynpm i webpack -Dnpm i webpack-cli -Dnpm i @types/firefox-webext-browser @types/chrome -D // 浏览器扩展API提示支持 Typescript
tsc --initnpm i typescript ts-loader -D设置tsconfig.json配置文件
{ "compilerOptions": { "target": "ES2016", "module": "commonjs", // ts-node 不支持 commonjs 以外的任何模块语法 "allowJs": true, "outDir": "./dist", "rootDir": "./src", "strict": true, "moduleResolution": "node" }, "exclude": ["node_modules"], "include": ["./src/**/*.ts"]}让配置文件支持typescript
npm i ts-node @types/node @types/webpack -D创建webpack.config.ts配置文件
import path from "path";import webpack from "webpack";const config: webpack.Configuration = { mode: "production", entry: "./src/index.ts", output: { path: path.resolve(__dirname, "dist"), filename: "[name].bundle.js", }, module: { rules: [ { test: /\.tsx?$/, use: "ts-loader", exclude: /node_modules/, }, ], }, resolve: { extensions: [".tsx", ".ts", ".js"], },};export default config;配置package.json
{ "scripts": { "build": "webpack --config webpack.config.ts" }}测试对 typescript 支持
创建文件./src/index.ts
const test = <T>(value: T) => { return value;};const d = test(12);console.log(d);在端执行 npm run build, 如果dist目录下生成了.bundle.js文件则成功
支持 vue
npm i vuenpm i vue-loader -Dnpm i vue-template-compiler -Dtsconfig.json文件调整
{ "exclude": ["node_modules", "dist"], "include": ["./src/**/*.ts", "./src/**/*.vue", "./src/**/*.js"]}webpack.config.ts文件调整
const VueLoaderPlugin = require("vue-loader/lib/plugin");{ module: { rules: [ { test: /\.vue$/, loader: "vue-loader", }, { test: /\.tsx?$/, loader: "ts-loader", options: { appendTsSuffixTo: [/\.vue$/], }, exclude: /node_modules/, }, ], }, plugins: [new VueLoaderPlugin()],}类写法需要安装
npm i vue-class-component -Dnpm i vue-property-decorator -Dtypescript只能解析ts文件,无法解析vue文件,所以要做一个模块声明
声明文件shims-vue.d.ts
declare module "*.vue" { import Vue from "vue"; export default Vue;}支持 sass
npm i sass-loader node-sass -Dnpm i style-loader css-loader sass-loader -Dwebpack.config.ts 配置文件调整
module: { rules: [ ... // 普通的 `.scss` 文件和 `*.vue` 文件中的 // `<style lang="scss">` 块都应用它 { test: /\.scss$/, use: ["style-loader","css-loader", "sass-loader"], }, ], },项目地址
https://gitee.com/whnba/dev-browser-plug-config.git
其他项目
ip定位查询浏览器插件
老虎优惠券浏览器插件
原文转载:http://www.shaoqun.com/a/508744.html
bsci 认证:https://www.ikjzd.com/w/2339
parser:https://www.ikjzd.com/w/680
配置webpacknpmiinit--ynpmiwebpack-Dnpmiwebpack-cli-Dnpmi@types/firefox-webext-browser@types/chrome-D//浏览器扩展API提示支持Typescripttsc--initnpmitypescriptts-loader-D设置tsconfig.json配置文件{"compilerOptions&qu
tm商标:tm商标
雨果网:雨果网
巴克莱:巴克莱
解密独立站谷歌SEO!亚马逊卖家也能快速上手!:解密独立站谷歌SEO!亚马逊卖家也能快速上手!
2020莲花山睡莲展好看吗?番禺莲花山睡莲展怎么样?:2020莲花山睡莲展好看吗?番禺莲花山睡莲展怎么样?
No comments:
Post a Comment