Mint 是面向前端开发的编程语言,旨在从语言层面解决编写单页应用 (Single Page Application, SAP) 的常见问题。例如:
Mint 可帮助开发者编写无错误、易于阅读和可维护的应用程序。
在 Mint 语言中,支持使用style
块直接用 CSS 来为元素设置样式。
component TodoItem {
property color = "#333"
property label = ""
property done = false
style base {
align-items: center;
display: flex;
}
style label {
font-weight: bold;
color: #{color};
flex: 1;
if (done) {
text-decoration: line-through;
}
}
fun render {
<div::base>
<span::label>
<{ label }>
</span>
<Icon.Checkmark/>
<Icon.Trash/>
</div>
}
}
Mint 语言的store
包含并用于管理数据,store
具有全局访问属性,并且可以连接到组件。当store
的数据发生变化时,连接的组件会被重新渲染。
record Todo {
label : String,
done : Bool
}
store Todos {
property items = [] of Todo
fun add (todo : Todo) {
next { items = Array.push(todo, items) }
}
fun delete (todo : Todo) {
next { items = Array.delete(todo, items) }
}
}
component TodoList {
connect Todos exposing { add, delete }
...
}
Mint 语言中的路由是一项语言特性而不是工具库,路由可在routes
块中进行定义,并支持类型化的路径参数。
routes {
/ {
Application.setPage(Page::Home)
}
/blog {
Application.setPage(Page::Blog)
}
/blog/:slug (slug : String) {
sequence {
Posts.load(slug)
Application.setPage(Page::Post)
}
}
* {
Application.setPage(Page::NotFound)
}
}
使用`...`
语法即可内嵌任何 JavaScript 代码。
module MyFunctions {
fun alert(message : String) : Promise(Never, Void) {
`
(new Promise((resolve) => {
alert(#{message})
resolve()
})()
`
}
fun decode : Maybe(TodoItem) {
try {
object =
`{ label: "Check out Mint!",
done: false }`
result =
decode as TodoItem
Maybe::Just(result)
} catch {
Maybe::Nothing()
}
}
}
必须 使用 Laravel 官方前端工具做前端开发自动化; 必须 保证页面只加载一个 .css 文件; 必须 保证页面只加载一个 .js 文件; 必须 为 .css 和 .js 增加 版本控制; 必须 使用 SASS 来书写 CSS 代码;
自我介绍 介绍一下你的项目 你在项目过程中学到了什么 你在项目中学习到了哪些技术 怎么解决跨域问题的? 出现跨域问题:Access-Control-Allow-Origin — 受同源策略限制:同协议同域名同端口 在前端使用代理,通过代理访问后端,首先配置请求baseURL,然后在vue.config.js中配置proxy设置代理,target即接口域名,将changeOrigin设为true并在
同程旅行 一面 (2023.11.30) 时间:30min base:苏州 自我介绍 盒模型如何设置样式?脱离文档流有哪些方法? 说说var、let、const的区别? 如果说我在函数里面,使用到了let 能够访问哪些地方? ES6里面的this指向,相对于 ES5有什么区别? 说下JS事件循环机制? Node.js 如何封装一个接口?原生是如何做的? Node.js 的事件循环 和 JS的事件循
BOSS上投简历后约线上面试 一面: 简历浅挖从工作经验到项目经验 逐一询问写到的技术点 最后一题在聊天框手撕React 写一个倒计时 反问表现 技术上ok,但把技术边界扩展开(因为聊到了意向是全栈开发) 一周后约二面 二面: 全程半小时 面试官没有开摄像头,自我介绍后开始聊项目,深挖(感觉有一点压力面) 由于大学专业学的AI,面试官开始结合着问 直到25分钟左右最后一问被问到人工智能工程化的问题
微信小程序开发工具快速二维码编译跳转的页面是指定页面?还是怎么弄的 我发现我们公司的通二维码编译跳转到了这个页面 这个页面路径需要自己设置吗? 小程序模拟器上的页面路径却不是这个jump的路径 而是其他的路径 pages/login/login-check/login-check
秋招这么久了,面了十几家公司。浅浅写几家面经攒攒人品。 拓维信息面经 1. 自我介绍。 2. vue2和vue3实现数据双向绑定原理的区别? 3. vuex怎么配置? 4. 坐过菜单栏吗?怎么实现的? 5. 路由跳转的方式? 6. 状态码你了解哪些? 7. es6新增的特性你知道哪些? 8. 箭头函数和普通函数的区别? 9. 组件间通信有哪些方法? 10. 给你一个紧急的项目你怎么接手? 11.
此文档主要实现的目标:代码一致性和最佳实践。通过代码风格的一致性,降低维护代码的成本以及改善多人协作的效率。同时遵守最佳实践,确保页面性能得到最佳优化和高效的代码。
使用WorkerMan开发应用,你需要了解以下内容: 一、WorkerMan开发与普通PHP开发的不同之处 除了与HTTP协议相关的变量函数无法直接使用外,WorkerMan开发与普通PHP开发并没有很大不同。 1、应用层协议不同 普通PHP开发一般是基于HTTP应用层协议,WebServer已经帮开发者完成了协议的解析 WorkerMan支持各种协议,目前内置了HTTP、WebSocket等协议