Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/362.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Vue:如何使用Vue cli服务为Nuxt构建捆绑包?_Javascript_Vue.js_Nuxt.js_Vue Cli - Fatal编程技术网

Javascript Vue:如何使用Vue cli服务为Nuxt构建捆绑包?

Javascript Vue:如何使用Vue cli服务为Nuxt构建捆绑包?,javascript,vue.js,nuxt.js,vue-cli,Javascript,Vue.js,Nuxt.js,Vue Cli,用户试图使用nuxt.js,但出现错误:未定义文档 我找到了第一个问题。当我使用“build bundle”构建捆绑包时:“vue cli服务构建--目标库--名称索引。/src/index.js”, 正在使用vue样式加载程序。但是,这会导致使用nuxt项目时出错。这一部分失败了: function addStyle (obj /* StyleObjectPart */) { var update, remove var styleElement = document.querySel

用户试图使用nuxt.js,但出现错误:
未定义文档

我找到了第一个问题。当我使用“build bundle”构建捆绑包时:“vue cli服务构建--目标库--名称索引。/src/index.js”, 正在使用vue样式加载程序。但是,这会导致使用nuxt项目时出错。这一部分失败了:

function addStyle (obj /* StyleObjectPart */) {
  var update, remove
  var styleElement = document.querySelector('style[' + ssrIdKey + '~="' + obj.id + '"]') 
未定义文档,因为我们正在使用服务器呈现。但问题是如何构建我的包,以便与nuxt一起使用

我需要:

  • index.common.js
  • index.umd.js
  • index.umd.min.js

这是由于服务器端渲染。如果需要指定仅在客户端导入资源,则需要使用
process.client
变量

例如,在
.vue
文件中:

if(process.client){
require('external_library')
//做点什么
}
以上是
文档未定义的基本解决方案

我检查了一些信息,发现这个问题不是由你的包裹引起的。事实上,问题在于用户的nuxt项目中的
缓存加载程序
包。
由于某些原因,缓存加载程序错误地将当前环境确定为
浏览器
,而不是
节点
,因此
vue样式加载程序
被混淆并使用客户端实现

因此,请尝试让用户将以下配置添加到
numxt.config.js
文件中,以禁用服务器端的样式表缓存:

构建:{
...
是的,
扩展(配置,{isServer,isDev,isClient}){
...
如果(isServer){
for(config.module.rules.filter({test})的常量规则=>
/\.((c | le | sa | sc)ss | styl.*)/.test(test.toString())
)) {
for(const rule of rules.oneOf | |【】){
rule.use=rule.use.filter(
({loader})=>loader!=='cache loader'
)
}
}
}
...
}
...
}

我找到了一个解决方案,但它没有使用
vue cli
服务。相反,这些文件是通过
汇总
编译的。我发现使用这项服务要容易得多。
cli
服务的唯一问题是它会调整回购的“流量”。但是,您可以修改
rollup.config.js
来修改文件夹结构


汇总的问题在于它不是网页包。因此,需要调整使用网页包配置的所有组件,或者修改rollup.config.js,以包括附加功能

Im有相同问题-有任何问题luck@Jujubes运气不好:(如果你找到了一个解决方案,请不要害羞,把它贴在这里!我还没有找到任何东西-花了几个小时玩弄配置文件和搜索互联网,没有任何成功的奖励-希望你有没有尝试过通过vue.config.js中的
CSS:{extract:false}
内联CSS作为“错误”这可能是一个不错的解决办法。这不是答案阅读问题和评论-请不要复制和粘贴网上现成的内容。问题是如何使用Vue:如何使用Vue cli服务为Nuxt构建捆绑包?`关于
汇总的文档离
webp还很远ack
也可以。我还发现使用
sfc init
方法会带来过时的包。我会在之后更新