在 Webpack 中使用 art-template

2023-11-04

一、搭建Webpack环境

1. 项目目录

2. 初始化项目

npm init

3. 安装 Webpack 相关依赖包

npm install --save-dev webpack@4.44.1 webpack-cli@3.3.12 html-webpack-plugin@4.3.0

4. 修改 scripts

"scripts": {
    "start": "webpack"
}

二、安装、配置 art-template

1. 安装 art-template 和 art-template-loader

npm install art-template@4.13.2
npm install art-template-loader@1.4.3 --save-dev

2. 配置 webpack.config.js

  • 目录结构

  • art文件与js文件中的内容

  • webpack.config.js
const path = require('path');
const HtmlWebpackPlugin = require('html-webpack-plugin');
const { ModuleFilenameHelpers } = require('webpack');

// 获取绝对路径
const resolve = dir => path.resolve(__dirname, dir);

module.exports = {
    mode: 'development',
    // webpack 入口文件
    entry: {
        index: './src/index.js',
        list: './src/list.js'
    },
    // Webpack 输出路径
    output: {
        // 输出的目录
        path: resolve('dist'),
        // 输出的文件名
        filename: 'js/[name].js'
    },
    // source-map,调试用的,出错的时候,将直接定位到原始代码,而不是转换后的代码
    devtool: 'cheap-module-eval-source-map',
    // 不同类型模块的处理规则
    module: {
        rules: [
            // 模板文件
            {
                test: /\.art$/,
                loader: 'art-template-loader'
            }
        ]
    },
    plugins: [
        // 自动将依赖注入 html 模板,并输出最终的 html 文件到目标文件夹
        new HtmlWebpackPlugin({
            filename: 'index.html',
            template: './src/index.art',
            chunks: ['index']
        }),
        new HtmlWebpackPlugin({
          filename: 'list.html',
          template: './src/list.art',
          chunks: ['list']
        })
    ]
}

三、编译打包

npm start

  • 在浏览器打开 index.html、list.html

注:art-template帮助文档(Webpack - art-template

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 Webpack 中使用 art-template 的相关文章

随机推荐

  • 百度地图的基本知识与使用

    一 解释 LBS LocationBusinessServer基于定义位置的商业服务 二 使用步骤 1 登录注册 获取秘钥AK 2引入百度地图js 3创建地图的容器 div div 4初始化地图 var map new BMap Map c
  • 【安卓逆向】360加固-脱壳修复

    最近花了一些时间学习逆向脱壳 这方面一直投入的时间比较少 样本经过某加固宝进行加固 这里简单记录一下脱壳过程和思路 感谢某数字公司对安全加固的无私贡献 让我有机会小小的提高一下这方面的技能 安卓逆向交流学习qq 3251901516 vx
  • 【编程之路(003)】循环语句(for,while,do while语句)(C语言实现)

    目录 总体介绍 引言 for语句 基本语法 具体使用 for循环中的break和continue while语句 基本语法 具体使用 while语句中的break和continue do while 循环 具体使用 while语句中的bre
  • vc入门

    一 VC是什么 学VC是学什么 首先VC是一个软件 IDE集成开发环境 编译 编辑 调试 C和C 但C 中的有些特性是不用的 例如I O流 多态继承 WindowsSDK 软件开发工具 VC的灵魂 MFC 微软基础类库 ATL Active
  • php mail方法_php邮件发送的两种方式

    这篇文章研究的主要内容就是使用PHP来发送电子邮件 总结为以下两种方法 一 使用PHP内置的mail 函数 to test 163 com 收件人 subject Test 主题 message This is a test mail 正文
  • geopy 库 ConfigurationError 错误

    错误详情 geopy exc ConfigurationError Using Nominatim with default or sample user agent geopy 2 2 0 is strongly discouraged
  • LeetCode每日一练 —— 160. 相交链表

    前言 Wassup guys 我是Edison 今天是 LeetCode 上的 leetcode 160 相交链表 Let s get it 文章目录 1 题目分析 2 思路分析 判断相交 求出交点 实现步骤 3 代码实现 1 题目分析 给
  • Optional 详细用法

    1 Optional 是一个对象容器 具有以下两个特点 提示用户要注意该对象有可能为null 简化if else代码 Optional empty 创建一个空的 Optional 实例 Optional of T t 创建一个 Option
  • 正大国际:期货日内波段交易

    期货市场是变幻莫测的市场 期货价格受到各个方面的影响 很多投资者认为无法掌握期市规律 觉得期市没有规律 我认为 期货市场还是有很多规律可循的 我们只要掌握这些规律 就可以掌握大的概率 第一 价格总是能反映市场预期 第二 价格运行总是从一个平
  • PGF 概率生成函数 Probability generating function

    文章目录 随机结构举例 two classical combinatorial distributions PGF Probability generating functions定义 矩 Moments 例题 二项分布的r order 阶
  • Urban Radiance Fields

    Urban Radiance Fields 城市辐射场 摘要 这项工作的目标是根据扫描平台捕获的数据执行 3D 重建和新视图合成 这些扫描平台通常部署用于城市室外环境中的世界地图绘制 例如 街景 给定 RGB 图像序列和通过室外场景移动的相
  • 动态加载js文件-不适用缓存

    浏览器每次加载资源时 都会查看缓存内容 如果浏览器判断缓存中存在 则不重新加载资源 可以在请求资源后面增加随机数或者时间戳 让浏览器判断此请求为新请求 js文件加随机数方式如下
  • 字符串数组的输入

    题目 编写一个程序 输入n n lt 6 个字符串 输出其中最短字符串的有效长度 要求定义函数int minlen char str int n 用于计算有n个元素的指针数组str中最短的字符串长度 code include
  • SQL查询包含指定列的所有表

    select from information schema columns where column name 指定列名 其中information schema是一个系统库 包含了columns tables routines等表
  • 7-2 二分查找

    这个题其实就是一个二分查找的练习 如果不想写二分查找代码的就直接写lower bound int 查找的数 二分查找相比普通查找他的复杂度是log2n include
  • java中final修饰成员变量注意事项

    java核心技术中说到 实例成员变量被final修饰后 构建对象时必须初始化这个变量 并且之后不允许再改变这个值 也就是说 一个构造器执行后 确保这个值被初始化了 所以可以得知 1 如果一个被final修饰的实例域只声明没有初始化 那么必须
  • MySQL数据库-Day1笔记

    1 创建学生表 create table student id int primary key auto increment name varchar 20 not null sex char 5 age int score double
  • [libuv]uv_loop_close和uv_stop的区别

    作者 玄冬Wong uv loop close 是释放掉uv loop t 指针相关的资源 uv stop 是退出当初由uv run 运行的正在阻塞中的逻辑 当程序完全退出需要清理全部uv相关的资源时 具体清理方式如下 1 这里假设你在函数
  • 非极大值抑制(NMS)及其变种实现

    文章目录 非极大值抑制 NMS 及其变种实现 NMS各大变种 标准NMS 局部感知NMS LNMS 倾斜NMS INMS 多边形NMS PNMS 掩膜NMS MNMS 总结 Soft NMS Motivation Method 非极大值抑制
  • 在 Webpack 中使用 art-template

    一 搭建Webpack环境 1 项目目录 2 初始化项目 npm init 3 安装 Webpack 相关依赖包 npm install save dev webpack 4 44 1 webpack cli 3 3 12 html web