服务器之家:专注于服务器技术及软件下载分享
分类导航

node.js|vue.js|jquery|angularjs|React|json|js教程|

服务器之家 - 编程语言 - JavaScript - Vue前端判断数据对象是否为空的实例

Vue前端判断数据对象是否为空的实例

2021-09-08 15:48shokang JavaScript

这篇文章主要介绍了Vue前端判断数据对象是否为空的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

看代码:

Vue前端判断数据对象是否为空的实例

Vue提供了强大的前端开发架构,很多时候我们需要判断数据对象是否为空,使用typeof判断是个不错选择,具体代码见图。

补充知识:vue打包后 history模式 跟子目录 静态文件路径 分析

history

根目录

路由mode变为history后,需要在服务器配置 url重写,在根目录 创建web.config文件 加下面内容复制进去

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.webServer>
 <rewrite>
  <rules>
  <rule name="Handle History Mode and custom 404/500" stopProcessing="true">
   <match url="(.*)" />
   <conditions logicalGrouping="MatchAll">
      <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
      <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
   </conditions>
   <action type="Rewrite" url="/index.html" />
  </rule>
  </rules>
 </rewrite>
 </system.webServer>
</configuration>

background: url('/static/logo.png') no-repeat center/ 50%; 跟路径 / 和 相对路径

<img src="/static/logo.png" js" id="highlighter_800544">

?
1
2
3
4
5
6
<img :src="image" alt="" srcset="">  跟路径 / 和../
data () {
 return {
 image: '../static/logo.png'
 }
}

子目录

例如我在根目录下创建子目录名为app的文件夹作为项目文件夹

路由mode变为history后,需要在服务器配置 url重写,在根目录 创建web.config文件 加下面内容复制进去 与根目录不同的是

action 标签 url /app/index.html

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.webServer>
 <rewrite>
  <rules>
  <rule name="Handle History Mode and custom 404/500" stopProcessing="true">
   <match url="(.*)" />
   <conditions logicalGrouping="MatchAll">
      <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
      <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
   </conditions>
   <action type="Rewrite" url="/app/index.html" />
  </rule>
  </rules>
 </rewrite>
 </system.webServer>
</configuration>

config index.js文件下 build对象中publicPatch 从默认的 / 改成 自己部署的 子目录名称 /app/

?
1
2
3
4
5
6
build: {
 // Paths
 assetsRoot: path.resolve(__dirname, '../dist'),
 assetsSubDirectory: 'static',
 assetsPublicPath: '/app/',
}

router.js 需要改下 base 根据不同的打包环境 dev 默认就是 / pro需要根据项目路径

?
1
2
3
4
5
6
7
var base = process.env.NODE_ENV === 'development' ? '/' : '/app/'
 
export default new Router({
 mode: 'history',
 base: base,
 routes: []
})

background: url('../../static/logo.png') no-repeat center/ 50%; 相对路径

<img src="../../static/logo.png" js" id="highlighter_787582">

?
1
2
3
4
5
6
<img :src="image" alt="" srcset=""> ../
data () {
 return {
 image: '../static/logo.png'
 }
}

总结:

history模式,本地运行 肯定是在根目录 127.0.0.1:xxxx/# 使用上面根目录方法

打包发到生产环境,视情况使用

根目录和子目录 有些相同的引入方法

建议 直接使用相同的方法 同时适应根目录和子目录 部署

background: url('../../static/logo.png') no-repeat center/ 50%; 相对路径

<img src="../../static/logo.png" js" id="highlighter_292412">

?
1
2
3
4
5
6
<img :src="image" alt="" srcset=""> ../
data () {
 return {
 image: '../static/logo.png'
 }
}

以上这篇Vue前端判断数据对象是否为空的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。

原文链接:https://blog.csdn.net/shokang/article/details/89632706

延伸 · 阅读

精彩推荐