| @@ -0,0 +1,97 @@ | |||
| <!DOCTYPE html> | |||
| <html> | |||
| <head> | |||
| <meta charset="utf-8"> | |||
| <title>垃圾分类查询助手</title> | |||
| <style> | |||
| .search, .result { | |||
| width: 720px; | |||
| margin: 50px auto; | |||
| } | |||
| .search > input { | |||
| width: 520px; | |||
| border: none; | |||
| outline: none; | |||
| text-align: center; | |||
| font-size: 36px; | |||
| line-height: 36px; | |||
| border-bottom: 1px solid gray; | |||
| margin: 0 20px; | |||
| } | |||
| .search button { | |||
| background-color: red; | |||
| color: white; | |||
| font-size: 28px; | |||
| border: none; | |||
| outline: none; | |||
| width: 120px; | |||
| } | |||
| .result > p, .result > div { | |||
| width: 640px; | |||
| margin: 0 auto; | |||
| } | |||
| .result > p, .result span { | |||
| text-align: left; | |||
| font-size: 28px; | |||
| } | |||
| .result img { | |||
| vertical-align: middle; | |||
| } | |||
| .explain { | |||
| font-size: 12px; | |||
| color: darkgray; | |||
| } | |||
| .result .pre { | |||
| font-size: 16px; | |||
| } | |||
| </style> | |||
| </head> | |||
| <body> | |||
| <div id="app"> | |||
| <div class="search"> | |||
| <input type="text" placeholder="请输入垃圾名字" v-model.trim="word" @keydown.enter="search()"> | |||
| <button @click="search()">查询</button> | |||
| </div> | |||
| <div class="result"> | |||
| <p v-if="searched && !results">没有对应的查询结果</p> | |||
| <div v-for="result in results"> | |||
| <p> | |||
| <img :src="'images/' + pictures[result.type]" width="56" :alt="types[result.type]"> | |||
| | |||
| <span>{{ result.name }}</span> | |||
| | |||
| <span class="pre" v-if="result.aipre == 1">(预测结果)</span> | |||
| </p> | |||
| <p class="explain">说明:{{ result.explain }}</p> | |||
| </div> | |||
| </div> | |||
| </div> | |||
| <script src="https://cdn.bootcss.com/vue/2.6.10/vue.min.js"></script> | |||
| <script> | |||
| new Vue({ | |||
| el: '#app', | |||
| data: { | |||
| word: '', | |||
| searched: false, | |||
| types: ['可回收物', '有害垃圾', '厨余垃圾', '其他垃圾'], | |||
| pictures: ['recyclable.png', 'harmful-waste.png', 'kitchen-waste.png', 'other-waste.png'], | |||
| results: [] | |||
| }, | |||
| methods: { | |||
| search() { | |||
| if (this.word.trim().length > 0) { | |||
| let key = 'e8c5524dd2a365f20908ced735f8e480' | |||
| let url = `http://api.tianapi.com/txapi/lajifenlei/?key=${key}&word=${this.word}` | |||
| fetch(url) | |||
| .then(resp => resp.json()) | |||
| .then(json => { | |||
| this.searched = true | |||
| this.results = json.newslist | |||
| }) | |||
| } | |||
| } | |||
| } | |||
| }) | |||
| </script> | |||
| </body> | |||
| </html> | |||