cli2弃用了吗 vue_vue cli - 2 升级到 3的问题汇总

基于已有项目从cli 2项目升级到cli 3项目中,需要修改的几项

多页面

更改vue.config.js配置, 遍历src/views目录下的所有入口文件,生成多个entry对象

const site = require('yargs').argv.site

const glob = require('glob')

const path = require('path')

module.exports = {

pages: getPages()

}

function getPages() {

var entryFiles = glob.sync(`./src/views/*/*.js`)

var pages = {}

entryFiles.forEach((filePath) => {

var folderName = getPageFolderName(filePath)

pages[folderName] = {

entry: filePath,

template: 'public/index.html',

fileName: folderName + '.html',

}

})

return pages

}

function getPageFolderName(filePath) {

const matches = (/.+\/views\/([a-zA-Z0-9]+)\//g).exec(filePath)

return matches.length && matches.length >= 2 ? matches[1] : ''

}

最终输入一个pages对象

{

download:

{ entry: './src/views/download/index.js',

template: 'public/index.html',

fileName: 'download.html' },

information:

{ entry: './src/views/information/index.js',

template: 'public/index.html',

fileName: 'information.html' },

}

预编译器的支持

单独安装项目需要的预编译器

# Sass

npm install -D sass-loader node-sass

# Less

npm install -D less-loader less

# Stylus

npm install -D stylus-loader stylus

style的公共样式自动导入

可统一使用style-resources-loader导入公共样式到vue文件和其他scss文件

注意事项:config.module.rule('scss').oneOf(type), 其中rule函数的参数为项目用到的样式文件类型

// vue.config.js

const path = require('path')

module.exports = {

chainWebpack: config => {

const types = ['vue-modules', 'vue', 'normal-modules', 'normal']

types.forEach(type => addStyleResource(config.module.rule('scss').oneOf(type)))

},

}

function addStyleResource (rule) {

rule.use('style-resource')

.loader('style-resources-loader')

.options({

patterns: [

path.resolve(__dirname, 'src/assets/css/variable.scss'),

],

})

}

运行时报错

访问页面时报如下错误

[Vue warn]: You are using the runtime-only build of Vue where the template compiler is not available. Either pre-compile the templates into render functions, or use the compiler-included build.

原因

vue有两种形式的代码 compiler(模板)模式和runtime模式(运行时),vue模块的package.json的main字段默认为runtime模式, 指向了"dist/vue.runtime.common.js"位置。

这是vue升级到2.0之后就有的特点。

项目用到如下实例化vue的写法,属于compiler模式

// compiler

new Vue({

el: '#app',

router: router,

store: store,

template: '',

components: { App }

})

解决办法一

//runtime

new Vue({

router,

store,

render: h => h(App)

}).$mount("#app")

解决方案二

修改webpack配置使vue加载时指向esm版

configureWebpack: {

resolve: {

alias: {

'vue$': 'vue/dist/vue.esm.js'

}

}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/311188.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C++实现dijkstra单源最短路径算法-邻接表+优先队列

dijkstra单源最短路径算法不允许边权值为负&#xff0c;适用的图范围可以很大。 代码如下&#xff1a; #include <iostream> #include <queue> #include <vector> #include <string> using namespace std; const int N 1e8; bool done[N]; int dis[N…

编写高性能的C#代码(三)使用SPAN

原文来自互联网&#xff0c;由长沙DotNET技术社区编译。如译文侵犯您的署名权或版权&#xff0c;请联系小编&#xff0c;小编将在24小时内删除。作者介绍&#xff1a;史蒂夫戈登&#xff08;Steve Gordon&#xff09;是Microsoft MVP&#xff0c;Pluralsight的作者&#xff0c;…

pycharm配置git拉取项目代码,并添加版本控制

安装Git 打开网页进入git官网&#xff0c;找到git官网下载地址&#xff0c;下载git工具并且安装。 pycharm配置git 点击File -> Settings -> Version Control -> Git 选择Git安装的路径&#xff0c;点击OK 选择一个项目 进入我们需要拉取的项目&#xff0c;点击…

mpu 配置内存空间_mpu内存保护单元功能及工作原理

一些嵌入式系统使用多任务的操作和控制。这些系统必须提供一种机制来保证正在运行的任务不破坏其他任务的操作。即要防止系统资源和其他一些任务不受非法访问。嵌入式系统有专门的硬件来检测和限制系统资源的访问。它能保证资源的所有权&#xff0c;任务需要遵守一组由操作环境…

poj3981 字符串替换-字符串的基本操作

Description 编写一个C程序实现将字符串中的所有"you"替换成"we" Input 输入包含多行数据 每行数据是一个字符串&#xff0c;长度不超过1000 数据以EOF结束 Output 对于输入的每一行&#xff0c;输出替换后的字符串 Sample Input you are what you do…

.NET Core开发实战(第22课:异常处理中间件:区分真异常与逻辑异常)--学习笔记(上)...

22 | 异常处理中间件&#xff1a;区分真异常与逻辑异常这一节我们来讲解一下错误处理的最佳实践系统里面异常处理&#xff0c;ASP.NET Core 提供了四种方式1、异常处理页2、异常处理匿名委托方法3、IExceptionFilter4、ExceptionFilterAttribute源码链接&#xff1a;https://gi…

MYSQL开窗函数详解

基本概念 MYSQL8.0支持窗口函数&#xff08;Window Function&#xff09;&#xff0c;也称分析函数。窗口函数与组分聚合函数类似&#xff0c;但是每一行数据都会生成一个结果。如果我们将mysql与pandas中的DataFrame做类比学习的话他们的对应关系如下&#xff1a; SQL分组聚…

callmode php_Rabbitmq各方法的作用详解

exchange_declare(direct_logs,direct,false,false,false);// 这个是申明交换器&#xff0c;如果没有申明就给默认队列的这个交换器&#xff0c;而且发送的类型默认是direct)顺序参数名默认值作用1$exchange无交换机名2$type无交换机类型&#xff0c;分别有direct、fanout、top…

不同数据库select语句显示前N行数据比对

不同数据SQL对比 有时候我们只想查看一下表的数据的前几行数据&#xff0c;如果不加限制条件的话&#xff0c;默认会查询整个表的数据&#xff0c;等待时间比较久。下面是不同数据库select语句显示前N行数据比对&#xff1a; SQL Server select top 10 * from table_name;D…

hdu2648 Shopping-map容器

Problem Description Every girl likes shopping,so does dandelion.Now she finds the shop is increasing the price every day because the Spring Festival is coming .She is fond of a shop which is called “memory”. Now she wants to know the rank of this shop’s…

你可能需要了解一下的中台

【中台学习】| 作者 / Edison Zhou这是恰童鞋骚年的第201篇原创文章在数字化转型热潮下&#xff0c;各家企业都想建设中台&#xff0c;那么中台是怎么发展起来的&#xff1f;有哪些类型的中台&#xff1f;中台到底是个啥&#xff1f;本文为你一一解答这些问题。1学习背景与前言…

cma检测_CMA检测方法

1、铰页位置偏移检测方法:以铰页轴为基准,用钢直尺测量C1、用有游标卡尺测量C2合格要求:前后,e≤0.2mm;上下或左右,e≤1mm2、门扇中心至门框下门槛尺寸检测方法:在门扇与门框装配好后,准确划好门扇中心线,用钢尺测量C3合格标准:H≤2000,一等,1.0mm二等,1.5mm三等,2.0mmH&#x…

github运行不流畅问题

快速流畅访问Github工具 下载链接如下&#xff1a; 链接&#xff1a;https://pan.baidu.com/s/1RwdrNK__Vx-AEuUr8sM6pg 提取码&#xff1a;a0tw –来自百度网盘超级会员V3的分享 下载后解压&#xff0c;双击运行.exe文件 运行后长这样&#xff0c;给它丢一边不管就行了。

strcmp()字符串比较函数

字符串比较函数strcmp的比较,两个字符串自左向右逐个字符相比(按ASCII值大小相比较),直到出现不同的字符或遇’\0’为止。 基本形式为strcmp(str1,str2), 若str1str2,则返回零;若str1<str2,则返回负数;若str1>str2,则返回正数;

实现option上下移动_js: 实现Select的option上下移动 | 学步园

function UpOrDown(direct, selectId) {//direct : 1:Up, -1:Downvar obj document.getElementById(selectId);var len obj.length;var index obj.selectedIndex;//如果&#xff1a;1.没有选中的项; 2.向上&#xff0c;但已是最上; 3.向下&#xff0c;但是最下&#xff0c;不…

聊聊微信的Dark模式

大家好&#xff0c;我是Z哥。这周微信公布了一个我期待已久的好消息。周一的时候对外公布说&#xff0c;已经完成了iOS版本的Dark模式开发&#xff0c;可能会在下一个版本上线。▲截图来源于微博&#xff0c;版权归原作者所有真的是千呼万唤使出来&#xff0c;很多人期待这个功…

chrome浏览器快速访问stackoverflow

原因&#xff1a;国内网非常多的网站都使用免费的 Google CDN 服务来加载某些 js、字体样式库以提升网页浏览体验&#xff0c;例如 jQuery、Google Fonts。但是目前 Google 的大多数网站在大陆无法正常访问&#xff0c;因此这些本身是加快网页载入的库反而成为了阻塞网站加载的…

字符串哈希-BKDRHash

代码如下&#xff1a; #include <iostream> #include <vector> using namespace std; const int N 10005;struct node {char name[35]; };unsigned int BKDRHash(char *str) {unsigned int key 0, seed 31;while (*str) {key key * seed (*str);}return key …

linux程序已经在后台运行冻结了_Linux 让程序在后台执行

有些程序我们在打开时&#xff0c;会一直占用我们的终端&#xff0c;而且终端还不能关掉&#xff0c;所以这时候我们就需要让程序在后台运行。1.命令&#xff1a;nohupnohup python -u run.py > run.log 2>&1 &参数说明&#xff1a; run.py: 你需要后台运行的程序…

【开源要闻】Canonical发布新OpenStack工具、Kubernetes访客引导方法

Canonical发布支持CephFS的OpenStack Charms 20.02Canonical近日宣布了OpenStack Charms 20.02的全面上市&#xff0c;这是用于在Ubuntu上设计&#xff0c;构建和管理OpenStack私有云的强大工具的主要版本。OpenStack Charms 20.02是一个令人兴奋的版本&#xff0c;它增加了主要…